我是新手,所以请耐心等待......
我有这个命令:
tr '\\0' '\\377' < /dev/zero | dd bs=4096 count=1484095 of=/path/one
输出:
1+1484094 records in
1+1484094 records out
8412124 bytes transferred in 23.670 secs (355391 bytes/sec)
并且它不会针对洞空间执行,这意味着bs
*count
字节(6078853120 字节)。正如你所看到的,它只写入了 8412124 字节。我已经添加了废话和数数以加快操作速度。
问题出在哪里?
答案1
正如评论所提到的,当dd
读取一个块时,它可能会得到不完整的读取。然后它将其写入目标,只是它不完整,因此该块仅包含部分数据。
基本上,dd
这不是您想要使用的工具。它很少是在任何地方使用的工具,但它的使用很常见,只是因为它很常见。
看起来你想读取 6078853120 字节,所以只需使用head
即可。
tr '\\0' '\\377' < /dev/zero | head -c 6078853120 > /path/one