命令简介
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
[root@localhost text]# 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
[root@localhost text]# du -sh mingongge.txt
100.1M mingongge.txt
生成随机字符串
[root@centos7 ~]# 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