[20140702]linux使用dd的一些细节.txt

[20140702]linux使用dd的一些细节.txt

linux下使用dd要注意的一个重要细节是输入,输出不要写错或者写反,否者后果很严重.
另外假设要修改某个文件的中间部分,有一个细节要特别注意,否者会导致文件破坏.
举一个简单的例子来说明:

# cat a1.txt
111111111
222222222
333333333

--建立一个文件每行10个字符(看到9个字符+加上\n正好10个字符.)

# dd if=a1.txt of=a2.txt bs=10 skip=1 count=1
1+0 records in
1+0 records out

# cat a2.txt
222222222

--这样正好取出中间部分.假设修改最后一个字符为b.

# cat a2.txt
22222222b

--现在替换回去.
# dd if=a2.txt of=a1.txt bs=10 count=1 seek=1
1+0 records in
1+0 records out

# cat a1.txt
111111111
22222222b

# ls -l a1.txt
-rw-r--r--  1 root root 20 2014-07-02 16:19:46 a1.txt

--可以发现结尾部分丢失,文件大小改变.正确的做法是:

# dd if=a2.txt of=a1.txt bs=10 count=1 seek=1 conv=notrunc
1+0 records in
1+0 records out

--后面的参数conv=notrunc很重要! notrunc=>do not truncate the output file

# cat a1.txt
111111111
22222222b
333333333

--可以发现这样修改后,结果才正确,仅以此文做为自己犯的一个严重错误的纪念.链接:

http://blog.itpub.net/267265/viewspace-762523/

--再次补充一个,测试操作一定要小心!!!!!!

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/267265/viewspace-1204908/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/267265/viewspace-1204908/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值