復制文件并對原文件的內容進行轉換和格式化處理
dd命令 用于復制文件并對原文件的內容進行轉換和格式化處理。dd命令功能很強大的,對于一些比較底層的問題,使用dd命令往往可以得到出人意料的效果。用的比較多的還是用dd來備份裸設備。但是不推薦,如果需要備份oracle裸設備,可以使用rman備份,或使用第三方軟件備份,使用dd的話,管理起來不太方便。
建議在有需要的時候使用dd 對物理磁盤操作,如果是文件系統的話還是使用tar backup cpio等其他命令更加方便。另外,使用dd對磁盤操作時,最好使用塊設備文件。
dd(選項)
bs=<字節數>:將ibs(輸入)與obs(輸出)設成指定的字節數;
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,其中參數解釋:
塊大小可以使用的計量單位表
單元大小 | 代碼 ---- | ---- 字節(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
生成隨機字符串
我們甚至可以使用 /dev/urandom 設備配合 dd 命令 來獲取隨機字符串。
[root@localhost ~]# dd if=/dev/urandom bs=1 count=15|base64 -w 0
15+0 records in
15+0 records out
15 bytes (15 B) copied, 0.000111993 s, 134 kB/s
wFRAnlkXeBXmWs1MyGEs