[RESOLVIDO] backup retornar o dia da semana

Iniciado por rafasnn, 30 de Abril de 2008, 18:01

tópico anterior - próximo tópico

rafasnn

pessoal,

como faço um de script shell retornar o dia da semana, meu objetivo é o servidor fazer o backup somente de segunda a sexta ignorando o sábado e domingo.

vlw
Macbook Pro 2,33 4GB 250GB
iPhone 8GB

kakita

já exprimentou o  programa simple backup que está nos repositórios do ubuntu??

clcampos

date +'%A'

ou

date +'%a'

Para saber mais:

man date
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

brunei

Apenas complementando o que o nosso amigo clcampos informou, você pode usar

date +'%w'

para exibir obter o dia da semana em forma numérica, com valores de 0 à 6, sendo que 0 é domingo. Isso torna seus scripts independentes do idioma do servidor.


Até mais...  ;)
Bruno Ribeiro

rafasnn

grato a todos, era exatamente isso!

brunei,

apenas para completas o script, como poderia fazer para o script só iniciar se os dias estiver contidos em 1,2,3,4,5 ?


vlw
Macbook Pro 2,33 4GB 250GB
iPhone 8GB

brunei

#5
Considerando que você está usando shellscript, poderia colocar a seguinte condicional no início do script:


DIA=`date +'%w'`

if [ $DIA -eq 0 ] || [ $DIA -eq 6 ]; then
    echo "Não é dia de backup"
    exit
fi

echo "Dia de backup"


No lugar da mensagem "Dia de backup" você coloca seus código. Lembrando que na atribuição


DIA=`date +'%w'`


você deve user aspas simples e não apóstrofos, para que o comando seja executado e seu retorno seja armazenado na variável.

Editado: trocado o operador E por OU, conforme observado pelo amigo rafasnn.
Bruno Ribeiro

rafasnn

Macbook Pro 2,33 4GB 250GB
iPhone 8GB

rafasnn

Citação de: brunei online 05 de Maio de 2008, 13:11
Considerando que você está usando shellscript, poderia colocar a seguinte condicional no início do script:


DIA=`date +'%w'`

if [ $DIA -eq 0 ] && [ $DIA -eq 6 ]; then
    echo "Não é dia de backup"
    exit
fi

echo "Dia de backup"


No lugar da mensagem "Dia de backup" você coloca seus código. Lembrando que na atribuição


DIA=`date +'%w'`


você deve user aspas simples e não apóstrofos, para que o comando seja executado e seu retorno seja armazenado na variável.



brunei,

apenas de curiosidade, a linha abaixo não completa a condição, a condição "&&" seria equivalente a "OR" ?


if [ $DIA -eq 0 ] && [ $DIA -eq 6 ]; then


Macbook Pro 2,33 4GB 250GB
iPhone 8GB

brunei

Muito bem observado meu amigo! Eu tinha feito a condição de um jeito e depois mudei, mas esqueci do operador. Troque por OU. Vou editar o post.

Obrigado! :)
Bruno Ribeiro

rafasnn

Macbook Pro 2,33 4GB 250GB
iPhone 8GB

brunei

Eu fiz a alteração no comentário anterior, mas aproveitando, fica assim:

DIA=`date +'%w'`

if [ $DIA -eq 0 ] || [ $DIA -eq 6 ]; then
    echo "Não é dia de backup"
    exit
fi

echo "Dia de backup"
Bruno Ribeiro

rafasnn

Macbook Pro 2,33 4GB 250GB
iPhone 8GB