Linux命令之dd
dd [OPERAND]
dd 选项
复制一个文件,根据[OPERAND]进行转换和格式化
(1). OPERAND参数
说明1:dd的选项只有’--help’和’--version’,也就是帮助与版本信息。而下列都是[操作数],而非选项。
说明2:读取是输入,写入是输出
说明3:不指定if,默认从标准输入读取。如果不指定of,默认写入到标准输出
bs=BYTES 同时设置读取和写入(输入ibs输出obs)的块大小为BYTES个字节,具体看本章(4).块大小可以使用的计量单位
cbs=BYTES 一次转换BYTES个字节,即指定转换缓冲区大小
conv=CONVERSION[,CONVERSION] 用指定参数转换文件
count=N 仅拷贝N个块,块大小等于ibs指定的字节数
ibs=BYTES 一次读取BYTES个字节,即指定一个块大小为BYTES个字节(默认512)
if=FILE 从文件读取代替标准输入,即指定源文件
iflag=FLAG[,FLAG] 使用FLAG参数指定的输入方式
obs=BYTES 一次写入BYTES个字节,即指定一个快大小为BYTES个字节(默认512)
of=FILE 写入到文件代替标准输出,即指定目的文件
oflag=FLAG[,FLAG] 使用FLAG参数指定的输出方式
seek=BLOCKS 从输出文件开头跳过BLOCKS个输出块再开始复制(小心ibs和obs不一样)
skip=BLOCKS 从输入文件开头跳过BLOCKS个输入块再开始复制(小心ibs和obs不一样)
status=WHICH 用来控制dd程序的输出信息。分别为noxfer,none和progress,默认为progress。none不输出任何相关信息,错误信息正常输出。noxfer不输出最后的统计信息。progress输出所有信息。
(2).CONVERSION参数
ascii 由ebcdic码转换至ascii码
ebcdic 由ascii码转换至ebcdic码
ibm 由ascii码转换至替换的ebcdic码
block 对于输入中的每一行输出cbs个字节,用空格替换输入换行符,必要时用空格填充
unblock 删除cbs大小的块的尾部空格,并添加一个换行符
lcase 将大写字符转换为小写字符
nocreat 不创建输出文件,输出文件必须已经存在
excl 输出文件已经存在则失败;dd命令必须创建文件本身
notrunc 不要截断输出文件(不将文件长度缩短为0)
ucase 将小写字符转换为大写字符
sparse 尝试查找而不是编写空(NUL)输出块。在支持稀疏文件的文件系统中,当扩展输出文件时,这会创建稀疏输出。
swab 交换每对字节,奇数时最后一个字节只复制
noerror 读取数据发生错误后仍然继续
sync 把每个输入块以空(NUL)填充至ibs大小,如果配合日block或unblock使用,则以空格代替空(NUL)填充
fdatasync 结束前将输出文件数据写入磁盘
fsync 类似上面,但元数据也一同写入
(3).FLAG参数
append 追加模式。将数据拷贝到目标文件末尾,同时应该设置conv=notrunc。否则文件将在被拷贝之前清空。
cio 使用并发I/O存取模式,此模式使用直接I/O。并删除POSIX要求,将所有I/O串行化到同一个文件。在cio模式下无法打开该文件,同时打开一个标准文件(这句话可能有错,原文:A file cannot be opened at cio mode,and with a standard open in the same time.)。
direct 使用直接I/O存取模式,避免缓冲区高速缓存(不在内存中对文件数据进行缓存)
directory 仅拷贝文件夹,因为很多系统不支持对文件夹进行I/O操作,所以不太实用。
dsync 使用同步I/O模式读写数据。每次写的时候,都强制进行一次物理写入(写入/保存到磁盘)
sync 数据和元数据都使用同步I/O模式。
fullblock 直到填充万一个块后才返回
nonblack 使用非阻塞I/O
noatime 不改变文件的访问时间
noctty 不对dd使用指定的文件作为控制终端
nofollow 不跟随符号链接
nolinks 如果有多个硬链接则失败(硬链接和软链接也就是符号链接,自己查一下吧,有点复杂)
binary 使用二进制I/O
text使用text I/0
count_bytes 将count的单位设置为字节,而不是块
(4).块大小可以使用的计量单位
|
单位大小 |
代码 |
|
字节(1B) |
c |
|
字节(2B) |
w |
|
块(512B) |
b |
|
千字节(1024B) |
k |
|
兆字节(1024KB) |
M |
|
吉字节(1024MB) |
G |
(5).实例
根据/dev/zero空文件创建一个50M的空文件
[xf@xuexi ~]$ dd if=/dev/zero of=1.txt bs=M count=50
记录了50+0 的读入
记录了50+0 的写出
52428800字节(52 MB)已复制,0.0508383 秒,1.0 GB/秒
[xf@xuexi ~]$ ll -h 1.txt
-rw-rw-r--. 1 xf xf 50M 2月 26 10:17 1.txt
[xf@xuexi ~]$ cat 1.txt
[xf@xuexi ~]$
注意:还可以用于完整备份。dd if=/dev/sda of=/dev/sdb(包括超级块等)
Linux命令之dd的更多相关文章
- Linux命令中dd的作用
Linux命令中用vi编辑文本时dd的作用是删除整行文本的信息.
- linux命令总结dd命令详解
一:dd命令 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512:c=1:k=1024:w=2 参数注释: if=文件 ...
- linux下显示dd命令的进度:
linux下显示dd命令的进度: dd if=/dev/zero of=/tmp/zero.img bs=10M count=100000 想要查看上面的dd命令的执行进度,可以使用下面几种方法: 比 ...
- 在linux上用dd命令实现ghost功能
ghost和g4l 安装操作系统,速度太慢,整个过程太冗长乏味了. 安装过程中,需要回答若干问题,系统需要安装无数个软件,创建和写入无数的文件.因为涉及到大量的文件定位和读写,速度一定是快不起来的. ...
- linux命令dd
原文链接: http://blog.csdn.net/adaptiver/article/details/6672592 dd 使用dd这个linux命令可以创建一定大小文件. linux创建文件命令 ...
- linux下利用dd命令测试磁盘读写速度
在Linux中,dd命令用于读取.转换和输出数据,它可从标准输入或文件中读取数据并输出到指定文件或标准输出中.该命令使用参数如下: 其中”=“后面的为设置的参数 If = <文件名> : ...
- [转帖]linux命令dd
linux命令dd dd 是diskdump 的含义 之前学习过 总是记不住 用的还是少. http://embeddedlinux.org.cn/emb-linux/entry-level/20 ...
- linux下显示dd命令的进度
sudo dd if=/dev/zero of=/tmp/zero.img status=progresslinux下显示dd命令的进度:dd if=/dev/zero of=/tmp/zero.im ...
- Linux命令随笔
Linux命令总结 man ==命令帮助; help ==命令的帮助(bash的内置命令); ls ==list,查看目录列表; -ld:查看目录权限; -l:(long)长格式显示属性; -F:给不 ...
随机推荐
- [CQOI2012]局部极小值
题目链接 注意到\(4\times 7\)的矩阵的局部极小值最多只有8个,可以状压. 设\(f[i][sta]\)表示从小到大填数,当前填到\(i\),极小值的填充状态为\(sta\)的方案数. 考虑 ...
- IPVS和Nginx两种WRR负载均衡算法详解
动机 五一临近,四月也接近尾声,五一节乃小长假的最后一天.今天是最后一天工作日,竟然感冒了,半夜里翻来覆去无法安睡,加上窗外大飞机屋里小飞机(也就是蚊子)的骚扰,实在是必须起来做点有意义的事了! ...
- BZOJ1305 [CQOI2009]dance跳舞 【网络流】
1305: [CQOI2009]dance跳舞 Time Limit: 5 Sec Memory Limit: 162 MB Submit: 3714 Solved: 1572 [Submit][ ...
- 【BZOJ 1901】Zju2112 Dynamic Rankings &&【COGS 257】动态排名系统 树状数组套线段树
外面是树状数组,里面是动态开点线段树,对于查询我们先把有关点找出来,然后一起在线段树上行走,这样就是单个O(log2)的了 #include <cstdio> #include <v ...
- Codeforces Round #534 (Div. 2) D. Game with modulo(取余性质+二分)
D. Game with modulo 题目链接:https://codeforces.com/contest/1104/problem/D 题意: 这题是一个交互题,首先一开始会有一个数a,你最终的 ...
- Could not resolve com.android.support:multidex:1.0.2
http://blog.csdn.net/goodlixueyong/article/details/50992835
- ng的ngModel用来处理表单操作
https://segmentfault.com/a/1190000009126012
- PushState+Ajax 完美实现无刷新
转载自:http://lazynight.me/1897.html 折腾一下PJAX,利用HTML5的新API,实现历史记录的完美导入. 不知道你用没用过Github,里边的目录跳转就是用html5的 ...
- php 上传csv文件
php fgetcsv()函数 定义和用法 fgetcsv() 函数从文件指针中读入一行并解析 CSV 字段. 与 fgets() 类似,不同的是 fgetcsv() 解析读入的行并找出 CSV 格式 ...
- CSS选择器及CSS3新增选择器
转自:http://www.cnblogs.com/libingql/p/4375354.html 1. CSS1定义的选择器 选择器 类型 说明 E 类型选择器 选择指定类型的元素 E#id ID选 ...