Tar归档,从文件列表中获取input
我有一个文件,其中包含我想用tar存档的文件列表。 我们称之为mylist.txt 
它包含:
 file1.txt file2.txt ... file10.txt 
 有没有一种方法可以发出TAR命令,将mylist.txt作为input? 就像是 
 tar -cvf allfiles.tar -[someoption?] mylist.txt 
这样就好像我发出这个命令一样:
 tar -cvf allfiles.tar file1.txt file2.txt file10.txt 
	
是:
 tar -cvf allfiles.tar -T mylist.txt 
 假设GNU tar(因为这是Linux),- -T或--files-from选项就是你想要的。 
您还可以input可能有用的文件名:
 find /path/to/files -name \*.txt | tar -cvf allfiles.tar -T - 
某些版本的tar(例如HP-UX上的默认版本(我testing过11.11和11.31))不包含用于指定文件列表的命令行选项,因此一个体面的解决方法是执行此操作:
 tar cvf allfiles.tar $(cat mylist.txt) 
在Solaris上,可以使用选项-I从文件中读取通常在命令行上声明的文件名。 与命令行相比,这可以创build数十万个文件的tar档案(就这样做了)。
所以这个例子会读
 tar -cvf allfiles.tar -I mylist.txt 
对于AIX来说,它的工作原理如下:
 tar -L List.txt -cvf BKP.tar