透過壓縮 tar 備份每個目錄

透過壓縮 tar 備份每個目錄

我正在尋找一種方法來掃描目錄(不是遞歸)並使用原始資料夾名稱對其進行壓縮,然後刪除該資料夾(這樣我將只壓縮該資料夾)任何人都有相應的命令嗎?

答案1

我可以建議以下一行(假設目前目錄是要備份的目錄的父目錄):

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

若要將每個資料夾名稱變更為小寫,並用底線取代空格:

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

相關內容