加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

发布时间:2020-12-15 22:38:43 所属栏目:安全 来源:网络整理
导读:我试图从程序输出中添加一个文件到tar存档,而不是先在磁盘上生成它.想一想构建脚本运行时自动生成的文件VERSION.我试过这个但是解除引用的符号链接只是一个命名管道,而不是常规文件: $date +%s | tar cf test.tar --dereference --transform="s#/proc
我试图从程序输出中添加一个文件到tar存档,而不是先在磁盘上生成它.想一想构建脚本运行时自动生成的文件VERSION.我试过这个但是解除引用的符号链接只是一个命名管道,而不是常规文件:

$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

解决方法

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读