Linux dd命令

dd 命令用于复制文件并对原文件的内容进行转换和格式化处理。

语法格式

dd [OPTIONS]...

选项说明

if=文件名       #指定源文件。
of=文件名       #指定目的文件。
ibs=bytes       #指定一个块大小为bytes个字节
obs=bytes       #指定一个块大小为bytes个字节
bs=bytes        #同时设置读入/输出的块大小为bytes个字节
cbs=bytes       #指定转换缓冲区大小
skip=blocks     #从输入文件开头跳过blocks个块后再开始复制
seek=blocks     #从输出文件开头跳过blocks个块后再开始复制
count=blocks    #仅拷贝blocks个块,块大小等于ibs指定的字节数
conv=<关键字>

关键字可以有以下 11 种:

conversion  #用指定的参数转换文件。
ascii     #转换ebcdic为ascii
ebcdic   #转换ascii为ebcdic
ibm      #转换ascii为alternate ebcdic
block    #把每一行转换为长度为cbs
unblock  #使每一行的长度都为cbs
lcase    #把大写字符转换为小写字符
ucase    #把小写字符转换为大写字符
swab     #交换输入的每对字节
noerror  #出错时不停止
notrunc  #不截短输出文件
sync     #将每个输入块填充到ibs个字节
--help     #显示帮助信息
--version  #显示版本信息

应用举例

# 创建 ISO 光盘映像。
dd if=/dev/sr0 of=/cd/cdrom.iso bs=2048 conv=noerror,sync
# 创建 /dev/sda 硬盘驱动器的 img 文件
dd if=/dev/sda of=~/disk1.img
# 将内容从 if= drive /dev/sda 复制到 of= drive /dev/sdb:
dd if=/dev/sda of=/dev/sdb
# 创建一个文件,大小为100M
dd if=/dev/zero of=mingongge.txt bs=100M count=1
1+0 records in
1+0 records out
104857600 bytes (1.0 MB) copied, 0.006107 seconds, 172 MB/s
du -sh mingongge.txt
100.1M    mingongge.txt
# 生成随机字符串
dd if=/dev/urandom bs=1 count=33|base64 -w 0
33+0 records in
33+0 records out
33 bytes (33 B) copied, 0.000199534 s, 165 kB/s
XrjvbxfTkz97rBuTmP5Ahb6gWN6E/uPyXqi/CAgBkEZ8

   转载规则


《Linux dd命令》 吴杭沉 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
C++ 引用 C++ 引用
声明具名变量为引用,即既存对象或函数的别名。 引用变量声明是声明符拥有下列形式的简单声明 & attr(可选) 声明符 (1) && attr(可选) 声明符 (2) (C++11 起) 1) 左值引用声明符:声明 S
2018-06-23
下一篇 
Linux 技巧 Linux 技巧
如果要谨慎使用 rm 命令,可以为它设置一个别名,在删除文件之前需要进行确认才能删除。有些系统管理员会默认使用这个别名,对于这种情况,你可能需要看看下一个技巧。 $ rm -i <== 请求确认 你可以使用 unalias 命令
2018-06-17
  目录