首頁 > 軟體

Linux dd命令使用詳解:複製檔案並對原檔案的內容進行轉換和格式化處理

2020-06-16 18:10:03

dd命令用於複製檔案並對原檔案的內容進行轉換和格式化處理。dd命令功能很強大的,對於一些比較底層的問題,使用dd命令往往可以得到出人意料的效果。用的比較多的還是用dd來備份裸裝置。但是不推薦,如果需要備份Oracle裸裝置,可以使用rman備份,或使用第三方軟體備份,使用dd的話,管理起來不太方便。

建議在有需要的時候使用dd 對物理磁碟操作,如果是檔案系統的話還是使用tar backup cpio等其他命令更加方便。另外,使用dd對磁碟操作時,最好使用塊裝置檔案。

語法

dd(選項)

選項

bs=<位元組數>:將ibs(輸入)與歐巴桑(輸出)設成指定的位元組數;
cbs=<位元組數>:轉換時,每次只轉換指定的位元組數;
conv=<關鍵字>:指定檔案轉換的方式;
count=<區塊數>:僅讀取指定的區塊數;
ibs=<位元組數>:每次讀取的位元組數;
obs=<位元組數>:每次輸出的位元組數;
of=<檔案>:輸出到檔案;
seek=<區塊數>:一開始輸出時,跳過指定的區塊數;
skip=<區塊數>:一開始讀取時,跳過指定的區塊數;
--help:幫助;
--version:顯示版本資訊。

範例

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

[root@localhost text]# du -sh sun.txt
1.1M    sun.txt

該命令建立了一個1M大小的檔案sun.txt,其中引數解釋:

if 代表輸入檔案。如果不指定if,預設就會從stdin中讀取輸入。
of 代表輸出檔案。如果不指定of,預設就會將stdout作為預設輸出。
bs 代表位元組為單位的塊大小。
count 代表被複製的塊數。
/dev/zero 是一個字元裝置,會不斷返回0值位元組()。

塊大小可以使用的計量單位表

單元大小 程式碼
位元組(1B) c
位元組(2B) w
塊(512B) b
千位元組(1024B) k
兆位元組(1024KB) M
吉位元組(1024MB) G


以上命令可以看出dd命令來測試記憶體操作速度:

1048576 bytes (1.0 MB) copied, 0.006107 seconds, 172 MB/s


IT145.com E-mail:sddin#qq.com