Bash
‘Tar’ ‘find’ 的結果,保留目錄結構
我想**tar作為find命令的結果獲得的所有**.txt***文件,這些文件存在於具有如下樹結構的目錄中:
- 目錄名
- 目錄1
- 文件1.pdf
- 文件1.txt
- 目錄2
- 文件2.pdf
- 文件2.txt
- 目錄3
- 文件3.pdf
- 文件 3.txt
(文件名只是範例)。
但我想保留目錄結構。
什麼命令可以給我一個包含此內容的tar.gz文件?
- 目錄1
- 文件1.txt
- 目錄2
- 文件2.txt
- 目錄3
- 文件 3.txt
您可以使用
xargs
將命令的輸出作為參數提供給另一個:find . -iname '*.txt' -print0 | xargs -0 tar zcvf the_tarball.tar.gz
請注意,
-print0
from find 和-0
from xargs 一起工作以正確分隔文件名(因此帶有空格的名稱等不是問題)。