DD(1) General Commands Manual DD(1)
創(chuàng)新互聯(lián)專注于橋西網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供橋西營銷型網(wǎng)站建設(shè),橋西網(wǎng)站制作、橋西網(wǎng)頁設(shè)計、橋西網(wǎng)站官網(wǎng)定制、小程序定制開發(fā)服務(wù),打造橋西網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供橋西網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
NAME
dd - 轉(zhuǎn)換和拷貝文件
摘要
dd [--help] [--version] [if=file] [of=file] [ibs=bytes] [obs=bytes]
[bs=bytes] [cbs=bytes] [skip=blocks] [seek=blocks] [count=blocks]
[conv={ascii, ebcdic, ibm, block, unblock, lcase, ucase, swab, noerror,
notrunc, sync}]
描述
當(dāng)進(jìn)行非強(qiáng)制的轉(zhuǎn)換的時候,使用指定的輸入和輸出塊大小拷貝文件
(默認(rèn)是從標(biāo)準(zhǔn)輸入到標(biāo)準(zhǔn)輸出。)
它每次從輸入讀取指定大小的一個塊(默認(rèn)是512字節(jié))。 如果使用 bs=bytes
選項,并且沒有轉(zhuǎn)換,除了指定 sync, noerror, 或 notrunc 之外,
那么dd將把全部讀到的數(shù)據(jù)(可以比請求讀的少) 寫到獨立的輸出塊去。
這個輸出塊的長度和讀到的數(shù)據(jù) 完全一樣,除非指定使用 sync(同步)
轉(zhuǎn)換,那樣的話,數(shù)據(jù)結(jié)尾處將追加NUL字符(或空格,見下)。
其他情況下,輸入的時候每次讀一個塊,然后處理,并將
輸出結(jié)果收集起來,最后寫到指定大小的數(shù)據(jù)塊中去。最
終的輸出塊可能會比指定的大小短一些。
數(shù)字值選項(以字節(jié)或塊為單位)后面可以跟一個乘數(shù):
k=1024,b=512,w=2,c=1(w和c是GNU擴(kuò)展語法。最好別 使用w,因為在system
V中,它表示2,在4.2 BSD中,它
表示4)。兩個或更多的數(shù)值表達(dá)式可以通過“x”乘起來。 GEU fileutils
4.0并且允許在數(shù)據(jù)塊大小的敘述中使用
下列乘法后綴(用bs=,cbs=,obs=):M=1048576,G=1073741824,
同理可得T,P,E,Z,Y。D后綴表示數(shù)值是以 十進(jìn)制表示的:kD=1000
MD=1000000 GD=1000000000等等。
(注意,在ls、df、du命令中,M等標(biāo)記的大小是由環(huán)境
變量確定的,而在DD中,它的值是固定的。)
選項
if=file
從 file 中讀而不是標(biāo)準(zhǔn)輸入。
of=file
寫到 file 里去而不是標(biāo)準(zhǔn)輸出。除非指定 conv=notrunc ,否則, dd
將把 file 截為O字節(jié)(或由 seek= 選項指定的大?。?/p>
ibs=bytes
一次讀 bytes 字節(jié)。默認(rèn)是512。
obs=bytes
一次寫 bytes 字節(jié)。默認(rèn)是512。
bs=bytes
一次讀和寫 bytes 字節(jié)。這將覆蓋 ibs 和 obs 設(shè)定的值(并且,設(shè)定
bs 不等于同時將 ibs 和 obs 設(shè)為同一個值,至少在 只使用 sync,
noerror 或 notrunc
轉(zhuǎn)換時是這樣的。因為bs規(guī)定,每個輸入塊都應(yīng)作為單獨
的數(shù)據(jù)塊拷貝到輸出,而不把較短的塊組合到一起)。
cbs=bytes
為 block 轉(zhuǎn)換和 unblock 轉(zhuǎn)換指定轉(zhuǎn)換塊的大小。
skip=blocks
在拷貝之前,跳過輸入文件的前 blocks 塊,每塊大小為 ibs-byte
字節(jié)。
seek=blocks
在拷貝之前,跳過輸出文件的前 blocks 塊,每塊大小為 obs-byte
字節(jié)。
count=blocks
只拷貝輸入文件的前 blocks 塊(每塊的大小為 ibs-byte
字節(jié)),而不是全部內(nèi)容,直到文件末尾。
conv=轉(zhuǎn)換"[,"轉(zhuǎn)換"]..."
將文件按 轉(zhuǎn)換 參數(shù)指定的方式轉(zhuǎn)換(在“,”兩邊沒有空格)。
轉(zhuǎn)換方式包括:
ascii 將EBCDIC轉(zhuǎn)換成ascii。
ebcdic 將ascii轉(zhuǎn)換成ebcdic。
ibm 將ascii轉(zhuǎn)換成alternative ebcdic。
block 每一行輸入,無論長短,輸出都是 cbs
字節(jié),并且其中的“換行”(NEWLINE,即c中的'0)用
空格替換。如有必要,行尾會填充空格。
unblock
用“換行”替換每個輸入塊( cbs 字節(jié)大?。┠┪驳目崭瘛?/p>
lcase 將大寫字母轉(zhuǎn)換成小寫。
ucase 將小寫字母轉(zhuǎn)換成大寫。
swab 交換每對輸入字節(jié)。如果讀入的字節(jié)數(shù)是奇數(shù),最后
一個字節(jié)只是簡單的復(fù)制到輸出(因為沒有能跟它交換的
字節(jié)了)(POSIX 1003.26,PASC翻譯1003.2 3號和4號)。
noerror
發(fā)生讀錯誤時,繼續(xù)進(jìn)行。
notrunc
不截斷輸出文件。
sync 用0填充到每個輸入塊的末尾,使其大小為 ibs 字節(jié)。
GNU標(biāo)準(zhǔn)選項
--help 將用法信息打印到標(biāo)準(zhǔn)輸出,并成功退出。
--version
將版本信息打印到標(biāo)準(zhǔn)輸出,并成功退出。
-- 結(jié)束選項列表。
環(huán)境變量
LANG, LC_ALL, LC_CTYPE和LC_MESSAGES具有其通常含義。
遵循標(biāo)準(zhǔn)
POSIX 1003.2
舉例
磁帶機(jī)通常不能接受任意大小的數(shù)據(jù)塊,當(dāng)最后一個數(shù)據(jù)片
段不能充滿整個塊時, dd 將出現(xiàn)I/O錯誤。用'dd if=myfile of=/dev/mytape
conv=sync' 就可以使全部內(nèi)容存到磁帶上。當(dāng)然,這樣做,把文件從磁
帶上讀回時回產(chǎn)生一個稍大些的文件,因為其尾部填充了一 些NUL(空字符)。
以上是man手冊的資料
dd就是分區(qū)的拷貝操作,一個分區(qū)或者說硬盤上某些扇區(qū)的某些塊(指定位置)都可以被視為一個磁帶,dd就是把固定的塊上保存的二進(jìn)制內(nèi)容做拷貝操作.
用法:dd [操作數(shù)] ...
或:dd 選項
Copy a file, converting and formatting according to the operands.
N and BYTES may be followed by the following multiplicative suffixes:
c =1, w =2, b =512, kB =1000, K =1024, MB =1000 1000, M =1024 1024, xM =M
GB =1000 1000 1000, G =1024 1024 1024, and so on for T, P, E, Z, Y.
Sending a USR1 signal to a running 'dd' process makes it
print I/O statistics to standard error and then resume copying.
18335302+0 records in
18335302+0 records out
9387674624 bytes (9.4 GB) copied, 34.6279 seconds, 271 MB/s
Options are:
GNU coreutils online help:
請向 報告dd 的翻譯錯誤
要獲取完整文檔,請運行:info coreutils 'dd invocation'
Linux下可以用系統(tǒng)自帶的工具dd命令,來實現(xiàn)刻錄U盤啟動系統(tǒng),方法如下:
1、卸載U盤,假設(shè)U盤對應(yīng)的設(shè)備是sdb1(可以使用df查看U盤對應(yīng)的設(shè)備)
df
sudo?umount?/dev/sdb1
2、寫入linux(ubuntu fedora .....)系統(tǒng)
sudo?dd?if=系統(tǒng)路徑???of=/dev/sdb
#例如把Ubuntu的鏡像寫入到U盤啟動
sudo?dd?if=./ubuntu-13.04-beta2-desktop-amd64.iso?of=/dev/sdb