我有以下我想做的事:
find . -maxdepth 6 (-name *.tar.gz -o -name bediskmodel -o -name src -o -name ciao -o -name heasoft -o -name firefly -o -name starlink -o -name Chandra) -prune -o -print| tar cvf somefile.tar --files-from=-
即排除了一大堆東西,只能看6子目錄深度,然後一旦修剪完成,焦油了休息。找到xargs的和焦油
不難。管道(|)之前的位工作100%。如果我排除了焦油,那麼我得到我以後的(屏幕)。但是一旦我包括管道和焦油,它就會包含所有的東西,包括我在排除中排除的所有東西。
我試過了許多不同的迭代:
-print0 | xargs -0 tar rvf somefile.tar
-print0 | xargs -0 tar rvf somefile.tar --null --files-from = -
-print0 | tar cvf somefile.tar --null -T -
那麼我做錯了什麼?我之前做過這件事;但現在它只是給我灰色的頭髮。
我相信你需要周圍的'* .tar.gz'報價,以避免它過得去'bash'傳遞給'之前擴大find' – drevicko 2013-05-06 01:07:02