linuxddif命令的简单介绍

linux里面dd命令作用是什么?

Linux dd 命令用于读取、转换并输出数据。

成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计制作、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的浮梁网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

dd 可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。

参数说明:

if=文件名:输入文件名,默认为标准输入。即指定源文件。

of=文件名:输出文件名,默认为标准输出。即指定目的文件。

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=关键字,关键字可以有以下11种:

conversion:用指定的参数转换文件。

ascii:转换ebcdic为ascii

ebcdic:转换ascii为ebcdic

ibm:转换ascii为alternate ebcdic

block:把每一行转换为长度为cbs,不足部分用空格填充

unblock:使每一行的长度都为cbs,不足部分用空格填充

lcase:把大写字符转换为小写字符

ucase:把小写字符转换为大写字符

swap:交换输入的每对字节

noerror:出错时不停止

notrunc:不截短输出文件

sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。

--help:显示帮助信息

--version:显示版本信息

linux怎么使用dd命令生成随机内容的大量小文件

使用dd命令快速生成大文件或者小文件的方法

转载请说明出处:

在程序的测试中有些场景需要大量的小文件或者几个比较大的文件,而在我们的文件系统里一时无法找到那么多或者那么大的文件,此时linux的dd命令就能快速的帮助你完成想要的文件。具体用法简单总结如下:

1.

dd命令可以轻易实现创建指定大小的文件,如

dd

if=/dev/zero

of=test

bs=1M

count=1000

在当前目录下会生成一个1000M的test文件,文件内容为全0(因从/dev/zero中读取,/dev/zero为0源),但是这样为实际写入硬盘,文件产生速度取决于硬盘读写速度,如果欲产生超大文件,速度很慢。在某种场景下,我们只想让文件系统认为存在一个超大文件在此,但是并不实际写入硬盘

则可以

dd

if=/dev/zero

of=test

bs=1M

count=0

seek=100000

此时创建的文件在文件系统中的显示大小为100000MB,但是并不实际占用block,因此创建速度与内存速度相当,seek的作用是跳过输出文件中指定大小的部分,这就达到了创建大文件,但是并不实际写入的目的。当然,因为不实际写入硬盘,所以你在容量只有10G的硬盘上创建100G的此类文件都是可以的。

2.

随机生成1百万个1K的文件

seq

1000000

|

xargs

-i

dd

if=/dev/zero

of={}.dat

bs=1024

count=1

安卓Linux环境下的dd命令使用总结

dd :用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。

注意:指定数字的地方若以下列字符结尾,则乘以相应的数字: b=512 ; c=1 ; k=1024 ; w=2

参数注释:

4、备份与恢复MBR

·备份文件开始的512个字节大小的MBR信息到指定文件:

#dd if=/system/xbin/busybox of=/data/local/tmp/bb count=1 bs=512

· count=1 指仅拷贝一个块; bs=512 指块大小为512个字节

·恢复:

#dd if=/data/local/tmp/bb of=/data/local/tmp/bbb

·将备份的MBR信息写到磁盘开始部分

/dev/null ,外号叫无底洞,你可以向它输出任何数据,它通吃,并且不会撑着!

/dev/zero ,是一个输入设备,你可你用它来初始化文件。该设备无穷尽地提供 0 ,可以使用任何你需要的数目——设备提供的要多的多。他可以用于向设备或文件写入字符串 0 。

/dev/null ——它是空设备,也称为位桶( bit bucket )。任何写入它的输出都会被抛弃。如果不想让消息以标准输出显示或写入文件,那么可以将消息重定向到位桶。

Linux dd 命令怎么用?具体例子?

举个例子说明一下:

将硬盘a克隆到硬盘b :

dd if=/dev/sda of=/dev/sdb bs=4M

可能在这个过程中的速度会比较慢,但是是有原因的,因为有用的和无用的数据都要复制。

——答案来自xisaiLinux界大牛老师

linux的dd命令测试读写,怎么确定bs参数设置多少合适?

1、先熟悉两个特殊的设备:

(1)/dev/null:回收站、无底洞。

(2)/dev/zero:产生字符。

2、测试磁盘写能力

time dd if=/dev/zero of=/testw.dbf bs=4k count=100000

rm -f /testw.dbf

因为/dev//zero是一个伪设备,它只产生空字符流,对它不会产生IO,所以,IO都会集中在of文件中,of文件只用于写,所以这个命令相当于测试磁盘的写能力。命令结尾添加oflag=direct将跳过内存缓存,添加oflag=sync将跳过hdd缓存。

3、测试磁盘读能力

time dd if=/dev/sdb of=/dev/null bs=4k

因为/dev/sdb是一个物理分区,对它的读取会产生IO,/dev/null是伪设备,相当于黑洞,of到该设备不会产生IO,所以,这个命令的IO只发生在/dev/sdb上,也相当于测试磁盘的读能力。(Ctrl+c终止测试)

4、测试同时读写能力

time dd if=/dev/sdb of=/testrw.dbf bs=4k

rm -f /testrw.dbf

在这个命令下,一个是物理分区,一个是实际的文件,对它们的读写都会产生IO(对/dev/sdb是读,对/testrw.dbf是写),假设它们都在一个磁盘中,这个命令就相当于测试磁盘的同时读写能力。


当前文章:linuxddif命令的简单介绍
本文URL:http://myzitong.com/article/hpsids.html