Linux 如何使用具有文件列表的变量通过管道将输入发送到tar

Linux 如何使用具有文件列表的变量通过管道将输入发送到tar,linux,bash,shell,Linux,Bash,Shell,我已经在互联网上搜索过了,但所有人都说要使用-T选项或find/DIR | tar-c 但我有一个变量中的文件列表,我必须通过管道向tar提供输入。 例如 grep-v“*”${filelist}| tar-cf gk.tar 我不想创建中间文件并从该文件中获取输出。试试看 grep -v "*" ${filelist} | xargs tar -cf gk.tar 签出xargs手册。如果文件列表太长,它可能无法工作。我找到了答案,因为使用“-T-”将从管道获取输入 例如 grep -v

我已经在互联网上搜索过了,但所有人都说要使用-T选项或find/DIR | tar-c

但我有一个变量中的文件列表,我必须通过管道向tar提供输入。 例如

grep-v“*”${filelist}| tar-cf gk.tar

我不想创建中间文件并从该文件中获取输出。

试试看

grep -v "*" ${filelist} | xargs tar -cf gk.tar

签出xargs手册。如果文件列表太长,它可能无法工作。

我找到了答案,因为使用“-T-”将从管道获取输入

例如

 grep -v "*" ${cpiolist} |tar -T - -cf gk.tar

文件列表中的内容如果您有一个包含列表的文件,您应该能够简单地编写
tar-T cpolist97-cf gk.tar