dd命令的用法

dd 是Unix或Unix-like操作系统中的一个命令行工具,用于在设备或文件间传输数据或转换数据。

dd 命令的常用选项如下:

if:指定输入(input)设备或文件。未指定则默认为stdin。

of:指定输出(output)设备或文件。未指定则默认为stdout。

bs:每次传输的块(block)的大小,单位为B(byte)。默认为512B。bs 的值可以指定单位,如bs=1b或bs=1k等。可用的单位有:c(1B)、b(block,512B)、k(1024B)等,更多见这里

count:传输多少个块(块的大小由bs指定)。若未指定count,则直到输入数据耗尽(如文件遇到EOF),或输出空间满为止。如果是从stdin输入,则按ctrl+d可以结束输入。

skip:跳过前面skip个块(块的大小由bs指定)後再传输。

也就是说:dd命令会跳过 if 的前 skip*bs个字节,然后将 if 的 bs*count 个字节传输到 of 处

例如:

dd if=/dev/zero of=/home/file bs=1k skip=1 count=50

将从 /dev/zero 跳过1k个字节后,传输 50k 个‘\0’ 到 /home/file 文件中。

 

所以,假设要跳过前面N个byte,则 bs 的大小要能整除N,即skip=N/bs,否则就无法跳过指定的N字节了。

 

conv:指定数据转换方式。如 lcase(把大写字符转换为小写字符)、ucase(把小写字符转换为大写字符)等。更多转换方式见这里

 

更多用法可以参考这篇文章

 

参考文档:

https://en.wikipedia.org/wiki/Dd_(Unix)

https://askubuntu.com/questions/798853/dd-different-unit-for-bs-skip-and-count

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值