tar 在存档中找不到文件,具体取决于尝试提取该文件所使用的命令

tar 在存档中找不到文件,具体取决于尝试提取该文件所使用的命令

我已经尝试从 tgz 存档中提取文件几个小时了。

正确使用tar -xzf my.tgz ./file.sh提取文件。但是,我正在使用的安装脚本以不同的方式提取文件,使用tar xfzO my.tgz ./file.sh > /tmp/file.sh.

在第一种情况下,tar 正确完成,按预期提取文件。然而,在第二种情况下,它输出一条消息,通知我在存档中找不到 ./file.sh。奇怪的是,tar --list ./file.sh -f my.tgz输出文件不存在,但是为什么第一次就成功提取了呢?

如何正确使用第二种方法提取我的文件?为什么 tar 没有找到它,尽管它就在那里?

答案1

命令的顺序很tar重要。具体来说:f 后面的参数必须是 tar 存档。尝试:

tar xzOf my.tgz ./file.sh > /tmp/file.sh

相关内容