24

我是这个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. 但我需要 tar1_1_1.txt1_1_2.txt放入一个 tar 文件和2_1_1.txt另一个2_1_2.txttar 文件。我怎样才能做到这一点?

4

3 回答 3

35

要简单地创建这些文件的 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

使用 .查看 tarball 的内容tar tf <tarball>

于 2013-03-03T20:57:03.707 回答
8

您可以简单地使用以下命令

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

tar cf file2.tar 2_1_1.txt 2_1_2.txt
于 2017-01-19T16:28:36.527 回答
2

试试这个:

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

如果要包含所有文件,包括子文件夹,请删除“-maxdepth 1”

您可以使用“1_1*.txt”之类的模式

于 2013-03-03T20:23:47.670 回答