Tar compactar diretórios e conteúdos em arquivos individuais e datados com base no script bash do nome da pasta

0

Isto está em um sistema Debian.

Eu tive a compactação de arquivos e conteúdo em pastas individuais funcionando bem, mas não com a data adicionada aos nomes dos arquivos. Removendo a parte da data, ela funciona como deveria.

Tenho certeza de que é algo relacionado à sintaxe, já que baseei isso em alguns exemplos que me deparei ...

Este é o código relevante:

for i in */; do tar -zcvf "$i $(date '+%y-%m-%d').tar.gz" "$i"; done
    
por winder28 23.02.2016 / 22:46

1 resposta

0

Parece-me que o "$ i ... bit é o problema - e o caractere de espaço provavelmente também não ajuda. $ i está obtendo o" / "no final do caminho, e isso é mais provavelmente a causa dos seus problemas, eu proponho que o seguinte irá resolver o seu problema (o {i :: - 1} remove o último caractere:

for i in */; do tar -zcvf ${i::-1}-$(date '+%y-%m-%d').tar.gz "$i"; done
    
por 23.02.2016 / 23:24