这个 tar 命令有什么问题?

这个 tar 命令有什么问题?
find /informatica/dev/SrcFiles* -mtime +7 -and -size +1M -exec tar -rvf files.8.2.2013.tar {} \;

该命令运行/工作正常,我不确定出了什么问题。我想找到超过 1MB 且超过 7 天的文件,然后将它们添加到单个 tar 文件中。

答案1

似乎find很好:

$ ll
total 3072
-rw-rw-r-- 1 saml saml 1048576 Jan  1  2012 afile1M
-rw-rw-r-- 1 saml saml 2097152 Jan  1  2012 afile2M

$ find . -mtime +7 -and -size +1M 
./afile2M

添加似乎tar也不错:

$ find . -mtime +7 -and -size +1M -exec tar -rvf files.8.2.2013.tar {} \;
./afile2M

查看生成的.tar文件,它似乎是正确的:

$ ll
total 5124
-rw-rw-r-- 1 saml saml 1048576 Jan  1  2012 afile1M
-rw-rw-r-- 1 saml saml 2097152 Jan  1  2012 afile2M
-rw-rw-r-- 1 saml saml 2099200 Aug  2 13:09 files.8.2.2013.tar

$ tar tvf files.8.2.2013.tar 
-rw-rw-r-- saml/saml   2097152 2012-01-01 00:00 ./afile2M

您确定有符合条件的文件吗?

答案2

我建议使用cpioover tar.... 例如:

 find dirx -depth -print0 | cpio --null -o --format=crc >archive.cpio

您可以更改crctarOLD tar 格式,或更改ustar为 POSIX.1 tar 格式。

您可以省略该--format规范以默认为旧的 CPIO bin 格式。

相关内容