gpt4 book ai didi

bash - 将 stdin 作为另一个文件添加到 tar 存档

转载 作者:行者123 更新时间:2023-11-29 09:01:00 24 4
gpt4 key购买 nike

我正在尝试从程序输出中将文件添加到 tar 存档中,而不是先在磁盘上生成它。想一想构建脚本运行时自动生成的文件 VERSION。我试过了,但取消引用的符号链接(symbolic link)只是一个命名管道,而不是一个普通文件:

$ date +%s | \
tar cf test.tar \
--dereference \
--transform="s#/proc/self/fd/0#VERSION#" \
/proc/self/fd/0 \
other_files \
and_folders/

结果应该是一个文件 VERSION,在 tar 存档中有一个时间戳,没有在本地生成一个文件:

$ tar tf test.tar
VERSION
other_files
and_folders

最佳答案

我不知道在 TAR 存档中创建“假”文件条目的方法。我会创建一个普通文件,将其添加到存档中,然后再将其删除。

不过,您可能想尝试选项 -A(或 --concatenate)。这将允许您在 /tmp 中创建文件,将其添加到 TAR 存档,然后在第二步中附加其余文件。这样,您就可以为 VERSION 文件创建任意路径。

关于bash - 将 stdin 作为另一个文件添加到 tar 存档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27107360/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com