当前位置:网站首页>dd命令:用于读取、转换并输出数据
dd命令:用于读取、转换并输出数据
2022-08-03 18:10:00 【天糊土】
以下内容源于网络资源的学习与整理,如有侵权请告知删除。
命令作用
从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。
参数说明
- 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:显示版本信息
实例
(1)在Linux 下制作启动盘。
dd if=boot.img of=/dev/fd0 bs=1440k
(2)将testfile_2文件中的所有英文字母转换为大写,然后转成为testfile_1文件。
dd if=testfile_2 of=testfile_1 conv=ucase
其中testfile_2 的内容为:
HELLO LINUX! Linux is a free unix-type opterating system. This is a linux testfile! Linux test
转换完成后testfile_1 的内容如下:
HELLO LINUX! LINUX IS A FREE UNIX-TYPE OPTERATING SYSTEM. THIS IS A LINUX TESTFILE! LINUX TEST
(3)由标准输入设备读入字符串,并将字符串转换成大写后,再输出到标准输出设备。
dd conv=ucase
输入以上命令后按回车键,输入字符串后再按回车键,按组合键Ctrl+D 退出。
[email protected]:/home/xjh/iot/embedded_basic/linux# dd conv=ucase xjhhandsome XJHHANDSOME 记录了0+1 的读入 记录了0+1 的写出 12字节(12 B)已复制,28.4933 秒,0.0 kB/秒 [email protected]:/home/xjh/iot/embedded_basic/linux#
(4)制作镜像文件rootfs.ext2常用的第一条语句。
创建一个大小为10M并用0填充的文件roots.ext2(这时候文件名的后缀没啥含义,只是表明要制作这个格式的镜像文件)
dd if=/dev/zero of=rootfs.ext2 bs=1024 count=10240
[email protected]:/home/xjh/iot/embedded_basic/linux# ls //一开始没有文件 [email protected]:/home/xjh/iot/embedded_basic/linux# dd if=/dev/zero of=rootfs.ext2 bs=1024 count=10240 记录了10240+0 的读入 记录了10240+0 的写出 10485760字节(10 MB)已复制,0.0614963 秒,171 MB/秒 [email protected]:/home/xjh/iot/embedded_basic/linux# ls rootfs.ext2 //执行上面命令之后,出现这个文件 [email protected]:/home/xjh/iot/embedded_basic/linux# du rootfs.ext2 -h 10M rootfs.ext2 //上面命令说明创建的大小是10M,这里的确是10M [email protected]:/home/xjh/iot/embedded_basic/linux#
边栏推荐
- How to install and start VNC remote desktop service on cloud GPU?
- LyScript 内存交换与差异对比
- fatal error: jni.h: No such file or directory
- 【mysql】SIGN(x) function
- VsCode preview Geojson data
- Web3 security risks daunting?How should we respond?
- 使用.NET简单实现一个Redis的高性能克隆版(一)
- BigInteger :new BigInteger(tokenJson.getBytes()).toString(16)什么意思
- ImportError: /lib/libgdal.so.26: undefined symbol: sqlite3_column_table_name
- Crack:WebKitX ActiveX and WebKitX VHX
猜你喜欢
随机推荐
细胞不可渗透的荧光探针 锌离子荧光探针Zinquin 151606-29-0
WPF 实现柱形统计图
大佬们,flinkcdc 2.2 版本采集sqlserver只能采集到全量的数据,不能采集到增量的数
PHP基础笔记-NO.1
Execution plan of mysql
使用.NET简单实现一个Redis的高性能克隆版(一)
PHP基础笔记-NO.2
cocos creater 3.x 插件安装方法
Blender script 删除所有幽灵对象
有人知道flink sql 使用tableEnv.executeSql执行后,怎么获取到任务运行的
七夕
常见荧光染料修饰多种基团及其激发和 发射波长数据一览数据
87.(cesium之家)cesium热力图(贴地形)
VsCode preview Geojson data
Online monitoring of UPS power supply and operating environment in the computer room, the solution is here
想要防止数据泄漏,如何选择国产浏览器?
Execution plan of mysql
云GPU如何安装和启动VNC远程桌面服务?
VsCode预览Geojson数据
关于vscode安装包下载太慢解决方法