linux - 使用 gnu-coreutils、bash 获取二进制文件的一部分

标签 linux bash gnu-coreutils

我想获取一个二进制文件的一部分,从字节#480161397到#480170447(包含在内,总共9051字节)

我使用cut -b,我预计 trunk1.gz 的大小为 9051 字节,但我得到了不同的结果。

$ wget https://commoncrawl.s3.amazonaws.com/crawl-data/CC-MAIN-2016-07/segments/1454701152097.59/warc/CC-MAIN-20160205193912-00264-ip-10-236-182-209.ec2.internal.warc.gz

$ cut -b480161397-480170447 CC-MAIN-20160205193912-00264-ip-10-236-182-209.ec2.internal.warc.gz >trunk1.gz

$ echo $((480170447-480161397+1))
9051

$ ls -l trunk1.gz
-rw-r--r--  1 david  staff     3400324 Sep  8 10:28 trunk1.gz

出了什么问题?

最佳答案

cut -bN-M 从输入的每一行复制范围N-M个字节。

示例:

$ cut -b4-7 <<END
0123456789
abcdefghij
ABCDEFGHIJ
END

输出:

3456
defg
DEFG

考虑使用 dd 来实现您的目的。

关于linux - 使用 gnu-coreutils、bash 获取二进制文件的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39386321/

相关文章:

linux - 尝试在 web min 中创建新用户和更新用户时出错

linux - 未配置 XML 加密器 - 使用 Key Vault 时

linux - 仅将旧文件移动到另一个目录

bash - 使用 ed 操作 find 匹配的文件

linux - 我们如何在 Linux 中指定 unzip 或 7za 命令将多个 zip 文件提取到一个文件夹中,同时保留所有重复项?

linux - ip 规则 : deleting all rules from table

node.js - 临时别名命令以压缩现有命令,然后在脚本退出时过期

bash - getopts 没有将指定的选项识别为有效

linux - 为什么我编译的bash(3.8M)比我的系统提供的bash(937K)大?

linux - 使用查找将文本回显到多个文件