gpt4 book ai didi

linux - 提取 cpio.gz 里面有两个文件

转载 作者:太空宇宙 更新时间:2023-11-04 12:29:39 25 4
gpt4 key购买 nike

我已经用命令创建了 cpio.gz:cat a.cpio.gz b.cpio.gz > c.cpio.gz

现在我想将这个 c.cpio.gz 文件提取到 b.cpio.gz 和 a.cpio.gz。我怎样才能做到这一点?

最佳答案

好的,我有 2 个 .gz 文件,a.txt.gzb.txt.gz。然后:

$ cat a.txt.gz b.txt.gz > c.txt.gz
$ hexdump -C c.txt.gz
00000000 1f 8b 08 08 f7 a3 00 59 00 03 61 2e 74 78 74 00 |.......Y..a.txt.|
00000010 4b 2c 4e e1 4a 24 80 01 a9 66 ae 58 24 00 00 00 |K,N.J$...f.X$...|
00000020 1f 8b 08 08 01 a4 00 59 00 03 62 2e 74 78 74 00 |.......Y..b.txt.|
00000030 2b 2c 4f e5 2a 24 0a 73 a5 72 01 00 70 24 d5 0a |+,O.*$.s.r..p$..|
00000040 2d 00 00 00 |-...|

请看那些从 0x00 和 0x20 开始的 1f 8b 08,它们是 .gz 文件 (based on the article I referred to in the OP's comments) 的 BOF 标记。现在一些 awk:

$ awk '
BEGIN { RS="\x1f\x8b\x08"; ORS="" } # set the marker to RS
NR==2 { print RS $0 > "a2.txt.gz" } # output the marker and what's after first marker
NR==3 { print RS $0 > "b2.txt.gz" } # output the marker and what's after the second
' c.txt.gz

生成 2 个文件,根据我的 diff,它们与原始文件相同。

关于linux - 提取 cpio.gz 里面有两个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43632587/

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