1、dd命令的使用
dd命令用于复制文件并对源文件的内容进行转换和格式化处理,在有需要的时候可以使用dd命令对物理磁盘进行操作,使用dd对磁盘操作时,最好使用块设备文件。
(1)命令语法
dd (选项)
(2)常用选项说明
if=filename:输入文件名,默认为标准输入,即指定源文件。
of=filename:输出文件名,默认为标准输出,即指定目的文件
ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。
obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。
bs=bytes:同时设置读入/输出的块大小为bytes字节。
cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。
skip=blocks:从输入文件开头跳过blocks个块后开始复制。
seek=blocks:从输出文件开头跳过blocks个块后再开始复制。
count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。
conv=keyword:关键字可以有下面这11种
conversion:用指定的参数转换文件;
ascii:转换ebcdic为ascii;
ebcdic:转换ascii为ebcdic;
ibm:转换ascii为alternate ebcdic;
block:把每一行转换为长度为cbs,不足部分用空格填充;
unblock:使每一行的长度为cbs,不足部分用空格填充;
lcase:把大小字符转换为小写字符;
ucase:把小写字符转换为大写字符;
swab:交换输入的每对字节;
noerror:出错时不停止;
notrunc:不截短输出文件;
sync:将每个输入块填充到ibs个字节,不足部分用NULL字符补齐。
--help:帮助。
--version:显示版本信息。
(3)实例
创建一个1M大小的文件sun.txt,命令如下:
$ dd if=/dev/zero of=sun.txt bs=1M count=1
参数解释:
if:代表输入文件,如果不指定if,默认将会从stdin中读取输入,/dev/zero是一个字符设备,会不断返回0值字节。
of:代表输出文件,如果不指定of,默认就好将stdout作为默认输出。
bs:代表字节单位的块大小。
count:代表被复制的块数。
块大小可以使用的计量单位表,如下:
参考:
https://man.linuxde.net/dd