我有一种情况,我必须阅读稀疏文件。此文件具有特定偏移量的数据。现在我想实现。 1)从给定的偏移量中读取3个块(自定义大小) 2)需要使用1M
来寻找偏移量所以,我正在尝试下面的命令,但没有成功。我肯定会阅读更多内容。
dd if=a_Sparse_file_ofSIZe_1024M of=/dev/null ibs=1M skip=512 obs=262144 count=3
跳过512M的块并从512M + 1次偏移读取,使用256K的块进行3次计数。
skip总是应该是MB,而count块是可变的。 我相信我正在阅读更多数据。有人可以纠正我。
答案 0 :(得分:3)
您总是可以将2 dd
串在一起,第一个跳过,第二个读取您的实际数据:
dd if=a_Sparse_file_ofSIZe_1024M bs=1M skip=N | dd bs=262144 count=3
答案 1 :(得分:1)
count
参数似乎基于ibs
,因此obs
值无关紧要。由于您的obs
值比ibs
小四倍,我建议您设置bs=256K
并将skip
值乘以四:skip=2048
。