我有二进制文件,其中包含各种长度的数据结构.我想将这些数据块保存到单独的文件中.每个块的大小是已知的.该split命令可以拆分文件,但在第一个数据块之后不会停止.它将文件切成相同大小的片段.
因此,我目前的解决办法是split与cat该文件的剩余部分重新走到一起,通过数据迭代我的方式.这非常笨拙,甚至可能在某些情况下失败.
在某些位置精确切割二进制文件的最佳方法是什么?
您可以使用两个独立的dd命令.一个是任意寻求,另一个是复制任意长度.
SEEK=501
BYTES=387
dd if=yourfile bs=$SEEK skip=1 | dd bs=$BYTES count=1 > lump.bin
Run Code Online (Sandbox Code Playgroud)
注意:尽管与实际尝试的内容相反,但要保持块高和低计数以获得最佳性能.我的意思是,如果你想要8192字节,请使用bs=8192 count=1而不是bs=1 count=8192.
| 归档时间: |
|
| 查看次数: |
3286 次 |
| 最近记录: |