通过下面的方式,可以看到两个U盘传输速度的差距,也可用于检查U盘真伪。
写测试会生成 test_write 文件,写测试的数据源 /dev/zero 是一个虚拟的不断产生零的linux设备,而非实际硬件。
读测试会将数据 test_write 读取,读测试的数据流向 /dev/null 是一个虚拟的可以接受任何数据的linux黑洞设备,而非实际硬件。
旧U盘拷贝2G多的文件,10分钟以上,进度条上稳定显示平均才7-9m/s,运行以上测试命令输出如下:
新U盘拷贝2G多的文件,不到1分钟,进度条上稳定显示平均为25m/s左右,运行以上测试命令输出如下:
建议在bash下运行man dd 或者 dd --help.以下请参考:
linux创建文件命令:dd命令
把指定的输入文件拷贝到指定的输出文件中,并且在拷贝的过程中可以进行格式转换。语法:
CODE:[Copy to clipboard]dd 〔选项〕
QUOTE:
if =输入文件(或设备名称)。
of =输出文件(或设备名称)。
ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。
skip = blocks 跳过读入缓冲区开头的ibs*blocks块。
obs = bytes 一次写入bytes字节,即写 入缓冲区的字节数。
bs = bytes 同时设置读/写缓冲区的字节数(等于设置obs和obs)。
cbs = bytes 一次转换bytes字节。
count = blocks 只拷贝输入的blocks块。
conv = ASCII 把EBCDIC码转换为ASCII码。
conv = ebcdic 把ASCII码转换为EBCDIC码。
conv = ibm 把ASCII码转换为alternate EBCDIC码。
conv = blick 把变动位转换成固定字符。
conv = ublock 把固定们转换成变动位
conv = ucase 把字母由小写变为大写。
conv = lcase 把字母由大写变为小写。
conv = notrunc 不截短输出文件。
conv = swab 交换每一对输入字节。
conv = noerror 出错时不停止处理。
conv = sync 把每个输入记录的大小都调到ibs的大小(用ibs填充)。
fdformat命令
低级格式化软盘。
实例:
创建一个100M的空文件
dd if=/dev/zero of=hello.txt bs=100M count=1
以上是linux创建文件命令:dd的用法。
举个例子说明一下:
将硬盘a克隆到硬盘b :
dd if=/dev/sda of=/dev/sdb bs=4M
可能在这个过程中的速度会比较慢,但是是有原因的,因为有用的和无用的数据都要复制。
——答案来自<xisai>Linux界大牛老师
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)