我是tar
命令的新手。我在目录中有很多文件:
1_1_1.txt
,1_1_2.txt
,
2_1_1.txt
,2_1_2.txt
..
我知道有一个命令:
tar cf file.tar *.txt
将所有四个文件tar
转换为file.tar
。但我需要将1_1_1.txt
和1_1_2.txt
tar到一个tar文件中,将2_1_1.txt
和2_1_2.txt
tar到另一个tar文件中。
我怎么能做到这一点?
答案 0 :(得分:30)
要简单地创建这些文件的tarball,我会这样做:
tar cf ones.tar 1_*.txt
tar cf twos.tar 2_*.txt
您最有可能要压缩tarball,因此请使用z
选项:
tar czf ones.tar.gz 1_*.txt
tar czf twos.tar.gz 2_*.txt
使用tar tf <tarball>
查看tarball的内容。
答案 1 :(得分:5)
您只需使用以下命令
即可tar cf file1.tar 1_1_1.txt 1_1_2.txt
tar cf file2.tar 2_1_1.txt 2_1_2.txt
答案 2 :(得分:2)
试试这个:
find . -maxdepth 1 -name "*.txt" -exec tar -rf test.tar {} \;
如果要包含所有文件,包括子文件夹,请删除“-maxdepth 1”
您可以使用“1_1 * .txt”等模式