2013-03-03 64 views
17

我是tar命令的新手。我有一個目錄多個文件: 1_1_1.txt1_1_2.txt2_1_1.txt2_1_2.txt ..如何打開一組文件?

我知道有一個命令:

tar cf file.tar *.txt 

這將tar四個文件全部變成file.tar。但我需要tar 1_1_1.txt1_1_2.txt到一個tar文件和2_1_1.txt2_1_2.txt到另一個tar文件。 我該如何做到這一點?

+4

嗯,你嘗試了嗎? – 2013-03-03 19:54:42

+0

如果文件名中有模式n需要創建大量文件,則使用循環 – 2013-03-03 19:58:30

+2

tar xzf將提取tarball。你的意思是tar czf,它會創建一個gzipped壓縮包:.tar.gz,cf會創建.tar – iain 2013-03-03 19:58:44

回答

25

要簡單地創建這些文件的壓縮包,我只需要做:

tar cf ones.tar 1_*.txt 
tar cf twos.tar 2_*.txt 

最有可能你要壓縮的壓縮包,所以使用z選項:

tar czf ones.tar.gz 1_*.txt 
tar czf twos.tar.gz 2_*.txt 

查看壓縮包中的內容與tar tf <tarball>

+0

謝謝。這是我需要的。 – 2013-03-04 01:38:33

2

試試這個:

find . -maxdepth 1 -name "*.txt" -exec tar -rf test.tar {} \;

如果要包括包括子文件夾中的所有文件,刪除 「-maxdepth 1」

你可以使用像模式 「1_1 * .TXT」

4

您可以簡單地使用下面的命令

tar cf file1.tar 1_1_1.txt 1_1_2.txt 

tar cf file2.tar 2_1_1.txt 2_1_2.txt