Linux dd命令用于讀取、轉(zhuǎn)換并輸出數(shù)據(jù)。
dd可從標準輸入或文件中讀取數(shù)據(jù),根據(jù)指定的格式來轉(zhuǎn)換數(shù)據(jù),再輸出到文件、設(shè)備或標準輸出。
常用參數(shù)
1.if=文件名:輸入文件名,缺省為標準輸入。即指定源文件。<if=input file >
2.of=文件名:輸出文件名,缺省為標準輸出。即指定目的文件。<of=output file >
3.ibs=bytes:一次讀入bytes個字節(jié),即指定一個塊大小為bytes個字節(jié)。
obs=bytes:一次輸出bytes個字節(jié),即指定一個塊大小為bytes個字節(jié)。
bs=bytes:同時設(shè)置讀入/輸出的塊大小為bytes個字節(jié),后門可以自定義大小,比如1M、1G
4.cbs=bytes:一次轉(zhuǎn)換bytes個字節(jié),即指定轉(zhuǎn)換緩沖區(qū)大小。
5.skip=blocks:從輸入文件開頭跳過blocks個塊后再開始復制。
6.seek=blocks:從輸出文件開頭跳過blocks個塊后再開始復制。
例子
將文件testfile_2里的內(nèi)容轉(zhuǎn)換成大寫,并輸出到testfile_1文件中,小寫對應的是lcase
ddif=testfile_2 of=testfile_1 conv=ucase
硬盤對拷
#ddif=/dev/sdc of=/dev/sdd
創(chuàng)建指定大小的文件
#ddif=/dev/zero of=/tmp/1.file bs=1M count=100
這樣就創(chuàng)建出來了一個100M(bs* count)的文件1.file
測試硬盤的讀寫速度
ddif=/dev/zero bs=1K count=1000000 of=/root/1Gb.file
ddif=/root/1Gb.file bs=64k | dd of=/dev/null
備注
/dev/zero,是一個輸入設(shè)備,你可你用它來初始化文件。該設(shè)備無窮盡地提供0,可以使用任何你需要的數(shù)目——設(shè)備提供的要多的多。
他可以用于向設(shè)備或文件寫入字符串0.
把/dev/null看作"黑洞",它等價于一個只寫文件,所有寫入它的內(nèi)容都會永遠丟失.,而嘗試從它那兒讀取內(nèi)容則什么也讀不到。
然而,/dev/null對命令行和腳本都非常的有用。
掌握 dd 命令就等于掌握了 Linux 系統(tǒng)的 "數(shù)據(jù)手術(shù)刀"!從基礎(chǔ)文件操作到高級磁盤克隆,從精準數(shù)據(jù)轉(zhuǎn)換到性能瓶頸診斷,這個多功能工具總能在關(guān)鍵時刻發(fā)揮奇效。
藍隊云官網(wǎng)上擁有完善的技術(shù)支持庫可供參考,大家可自行查閱,更多技術(shù)問題,也可以直接咨詢。同時,藍隊云整理了運維必備的工具包免費分享給大家使用,需要的朋友可以直接咨詢。更多技術(shù)知識,藍隊云期待與你一起探索,助力你在 Linux 運維之路上穩(wěn)步前行。