dd 命令常用参数和用法

dd 命令及常用参数

dd 是用来复制并可以转换文件(Copy a file, converting and formatting according to the operands)的工具。

常用参数

  1. if=FILE:不从stdin读取,转而从FILE文件读取;
  2. of=FILE:不写入stdout,转而写入FILE文件;
  3. bs=BYTES:一次读取或写入至多BYTES数量的字节;
  4. ibs=BYTES:一次读取至多BYTES数量的字节;
  5. obs=BYTES:一次写入至多BYTES数量的字节;
  6. cbs=BYTES:一次转换至多BYTES数量的字节;
  7. count=N:复制N个输入块,块大小由bs指定;
  8. skip=N:在输入开始处跳过N个块,理解为下标从1开始,读取下标为N的块;
  9. seek=N:在输出开始处跳过N个块,理解为下标从1开始,写入下标为N的块;
  10. conv=CONV:转换操作符,常用有lcase,ucase;
  11. oflag=append:追加在输出文件末尾。

BYTES 可以是数字,表示字节数,如8192,也可以使用K、M、G(按 1024 倍数),KB、MB、GB(按 1000 倍数)作为后缀,如 8K。

使用 dd 命令对数据库文件进行操作

指定位置读取数据文件

dd if=$ORACLE_HOME/oradata/ORCL/system01.dbf of=temp.bin bs=8K count=20 skip=40

指定位置写入数据文件,模拟数据文件出错

dd if=/dev/zero of=$ORACLE_HOME/oradata/ORCL/system01.dbf bs=8K count=1 seek=100

扩展数据文件

dd if=/dev/zero of=$ORACLE_HOME/oradata/ORCL/system01.dbf bs=8K count=200 oflag=append conv=notrunc

posted @ 2025-06-25 10:44  螺旋质子  阅读(198)  评论(0)    收藏  举报