Use o comando zip para colocar no diretório após a compactação

3

Estou criando meu script de backup e tenho isto:

DATE=$(date +"%m-%d-%Y")
zip -r backup.$DATE /home/folder/folder

Primeiro cria a variável de data para o nome, e a pasta / home / folder /, eu acho, é o diretório para backup com todos os outros diretórios e arquivos associados. Eu preciso fazer isso para que ele coloque o zip em / mnt / backups quando terminar.

Toda ajuda é apreciada. Obrigado

    
por nick 01.06.2015 / 23:51

1 resposta

2

Para colocar o arquivo zip no diretório correto:

Date=$(date +"%m-%d-%Y")
zip -r "/mnt/backups/backup.$Date" /home/folder/folder

Deve-se evitar o uso de todas as maiúsculas para variáveis shell. As variáveis importantes do sistema são todas maiúsculas e você não quer sobrescrever acidentalmente uma delas. Assim, o acima usa o caso misto Date em vez de DATE .

Gostaria, como você sugeriu, de .zip como o sufixo. Isso evita possíveis confusões no futuro. Além disso, não há necessidade de criar uma variável Date :

zip -r "/mnt/backups/backup.$(date +"%m-%d-%Y").zip" /home/folder/folder

Por fim, as datas no formato mês-dia-ano não são classificadas corretamente. O formato aaaa-mm-dd classificará naturalmente na ordem correta. A abreviação deste formato comum é %F . Então:

zip -r "/mnt/backups/backup.$(date +"%F").zip" /home/folder/folder
    
por John1024 02.06.2015 / 00:15