Latest web development tutorials

Linux dd命令

Linux dd命令

Linux 命令大全 Linux命令大全

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:把小寫字符轉換為大寫字符
    • swab:交換輸入的每對字節
    • noerror:出錯時不停止
    • notrunc:不截短輸出文件
    • sync:將每個輸入塊填充到ibs個字節,不足部分用空(NUL)字符補齊。
  • --help:顯示幫助信息
  • --version:顯示版本信息

實例

在Linux 下製作啟動盤,可使用如下命令:

dd if=boot.img of=/dev/fd0 bs=1440k 

將testfile文件中的所有英文字母轉換為大寫,然後轉成為testfile_1文件,在命令提示符中使用如下命令:

dd if=testfile_2 of=testfile_1 conv=ucase 

其中testfile_2 的內容為:

$ cat testfile_2 #testfile_2的内容  
HELLO LINUX!  
Linux is a free unix-type opterating system.  
This is a linux testfile!  
Linux test 

轉換完成後,testfile_1 的內容如下:

$ dd if=testfile_2 of=testfile_1 conv=ucase #使用dd 命令,大小写转换记录了0+1 的读入  
记录了0+1 的写出  
95字节(95 B)已复制,0.000131446 秒,723 KB/s  
cmd@hdd-desktop:~$ cat testfile_1 #查看转换后的testfile_1文件内容  
HELLO LINUX!  
LINUX IS A FREE UNIX-TYPE OPTERATING SYSTEM.  
THIS IS A LINUX TESTFILE!  
LINUX TEST #testfile_2中的所有字符都变成了大写字母 

由標準輸入設備讀入字符串,並將字符串轉換成大寫後,再輸出到標準輸出設備,使用的命令為:

dd conv=ucase 

輸入以上命令後按回車鍵,輸入字符串,再按回車鍵,按組合鍵Ctrl+D 退出,出現以下結果:

$ dd conv=ucase 
Hello Linux! #输入字符串后按回车键  
HELLO LINUX! #按组合键Ctrl+D退出,转换成大写结果  
记录了0+1 的读入  
记录了0+1 的写出  
13字节(13 B)已复制,12.1558 秒,0.0 KB/s 

Linux 命令大全 Linux命令大全