天天學一個 Linux 命令(77):dd

命令簡介

dd 命令用於複製文件並對原文件的內容進行轉換和格式化處理centos

語法格式

dd [OPTIONS]...

選項說明

if=文件名   #指定源文件。
of=文件名   #指定目的文件。
ibs=bytes  #指定一個塊大小爲bytes個字節
obs=bytes  #指定一個塊大小爲bytes個字節
bs=bytes   #同時設置讀入/輸出的塊大小爲bytes個字節
cbs=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個字節
--help     #顯示幫助信息
--version  #顯示版本信息

應用舉例

建立 ISO 光盤映像。dom

dd if=/dev/sr0 of=/cd/cdrom.iso bs=2048 conv=noerror,sync

建立 /dev/sda 硬盤驅動器的 img 文件centos7

dd if=/dev/sda of=~/disk1.img

將內容從 if= drive /dev/sda 複製到 of= drive /dev/sdb:spa

dd if=/dev/sda of=/dev/sdb

建立一個文件,大小爲100Mcode

[root@localhost text]# dd if=/dev/zero of=mingongge.txt bs=100M count=1
1+0 records in
1+0 records out
104857600 bytes (1.0 MB) copied, 0.006107 seconds, 172 MB/s
 
[root@localhost text]# du -sh mingongge.txt 
100.1M    mingongge.txt

生成隨機字符串ip

[root@centos7 ~]# dd if=/dev/urandom bs=1 count=33|base64 -w 0
33+0 records in
33+0 records out
33 bytes (33 B) copied, 0.000199534 s, 165 kB/s
XrjvbxfTkz97rBuTmP5Ahb6gWN6E/uPyXqi/CAgBkEZ8

image

相關文章
相關標籤/搜索