backup compactando tar cada diretório

backup compactando tar cada diretório

Estou procurando um método para verificar um diretório (não recursivo) e tará-lo usando o nome da pasta original e, em seguida, excluir a pasta (para ter apenas a pasta compactada). Alguém tem o comando para isso?

Responder1

Posso sugerir a seguinte linha (supondo que o diretório atual seja o pai dos diretórios para backup):

for f in */; do tar -czf "${f%/}.tar.gz" "$f"; rm -rf "$f"; done

Para alterar o nome de cada pasta para minúsculas e substituir espaços por sublinhado:

for f in */; do f="${f// /_}"; f="${f,,}"; tar -czf "${f%/}.tar.gz" "$f" && rm -rf "$f"; done_

informação relacionada