Man page - dd(1)

Packages contains this manual

Available languages:

en fr pt_BR es pl vi nb ko nl da cs tr hu sv ja uk fi ru ro zh_TW sr zh_CN de

Manual

DD

NAME
摘 要
描 述
選 項
GNU標 準 選 項
環 境 變 數
遵 循 標 準
舉 例

[中 文 版 維 護 人 ]
[中 文 版 最 新 更 新 ]
[中 國 Linux論 壇 man手 冊 頁 翻 譯 計 劃 ]


NAME

dd - 轉 換 和 複 製 檔 案

摘 要

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}]

描 述

當 進 行 非 強 制 的 轉 換 的 時 候 , 使 用 指 定 的 輸 入 和 輸 出 塊 大 小 複 製 檔 案 ( 預 設 是 從 標 準 輸 入 到 標 準 輸 出 。 )

它 每 次 從 輸 入 讀 取 指 定 大 小 的 一 個 塊 ( 預 設 是 512位 元 組 ) 。 如 果 使 用 bs= bytes 選 項 , 並 且 沒 有 轉 換 , 除 了 指 定 sync , noerror , 或 notrunc 之 外 , 那 麼 dd將 把 全 部 讀 到 的 資 料 ( 可 以 比 請 求 讀 的 少 ) 寫 到 獨 立 的 輸 出 塊 去 。 這 個 輸 出 塊 的 長 度 和 讀 到 的 資 料 完 全 一 樣 , 除 非 指 定 使 用 sync( 同 步 ) 轉 換 , 那 樣 的 話 , 資 料 結 尾 處 將 追 加 NUL字 元 ( 或 空 格 , 見 下 ) 。

其 他 情 況 下 , 輸 入 的 時 候 每 次 讀 一 個 塊 , 然 後 處 理 , 並 將 輸 出 結 果 收 集 起 來 , 最 後 寫 到 指 定 大 小 的 資 料 塊 中 去 。 最 終 的 輸 出 塊 可 能 會 比 指 定 的 大 小 短 一 些 。

數 字 值 選 項 ( 以 位 元 組 或 塊 為 單 位 ) 後 面 可 以 跟 一 個 乘 數 : k=1024, b=512, w=2, c=1( w和 c是 GNU擴 充 套 件 語 法 。 最 好 別 使 用 w, 因 為 在 system V中 , 它 表 示 2, 在 4.2 BSD中 , 它 表 示 4) 。 兩 個 或 更 多 的 數 值 表 示 式 可 以 透 過 “x”乘 起 來 。 GEU fileutils 4.0並 且 允 許 在 資 料 塊 大 小 的 敘 述 中 使 用 下 列 乘 法 字 尾 ( 用 bs=, cbs=, obs=) : M=1048576, G=1073741824, 同 理 可 得 T, P, E, Z, Y。 D字 尾 表 示 數 值 是 以 十 進 位 制 表 示 的 : kD=1000 MD=1000000 GD=1000000000等 等 。 ( 注 意 , 在 ls、 df、 du命 令 中 , M等 標 記 的 大 小 是 由 環 境 變 數 確 定 的 , 而 在 DD中 , 它 的 值 是 固 定 的 。 )

選 項

if= file

file 中 讀 而 不 是 標 準 輸 入 。

of= file

寫 到 file 裡 去 而 不 是 標 準 輸 出 。 除 非 指 定 conv=notrunc , 否 則 , dd 將 把 file 截 為 O位 元 組 ( 或 由 seek= 選 項 指 定 的 大 小 )

ibs= bytes

一 次 讀 bytes 位 元 組 。 預 設 是 512。

obs= bytes

一 次 寫 bytes 位 元 組 。 預 設 是 512。

bs= bytes

一 次 讀 和 寫 bytes 位 元 組 。 這 將 覆 蓋 ibs obs 設 定 的 值 ( 並 且 , 設 定 bs 不 等 於 同 時 將 ibs obs 設 為 同 一 個 值 , 至 少 在 只 使 用 sync , noerror notrunc 轉 換 時 是 這 樣 的 。 因 為 bs規 定 , 每 個 輸 入 塊 都 應 作 為 單 獨 的 資 料 塊 複 製 到 輸 出 , 而 不 把 較 短 的 塊 組 合 到 一 起 ) 。

cbs= bytes

block 轉 換 和 unblock 轉 換 指 定 轉 換 塊 的 大 小 。

skip= blocks

在 複 製 之 前 , 跳 過 輸 入 檔 案 的 前 blocks 塊 , 每 塊 大 小 為 ibs -byte 位 元 組 。

seek= blocks

在 複 製 之 前 , 跳 過 輸 出 檔 案 的 前 blocks 塊 , 每 塊 大 小 為 obs -byte 位 元 組 。

count= blocks

只 複 製 輸 入 檔 案 的 前 blocks 塊 ( 每 塊 的 大 小 為 ibs -byte 位 元 組 ) , 而 不 是 全 部 內 容 , 直 到 檔 案 末 尾 。

conv= 轉 換 "[," 轉 換 "]..."

將 檔 案 按 轉 換 引 數 指 定 的 方 式 轉 換 ( 在 “,”兩 邊 沒 有 空 格 ) 。

轉 換 方 式 包 括 :

ascii

將 EBCDIC轉 換 成 ascii。

ebcdic

將 ascii轉 換 成 ebcdic。

ibm

將 ascii轉 換 成 alternative ebcdic。

block

每 一 行 輸 入 , 無 論 長 短 , 輸 出 都 是 cbs 位 元 組 , 並 且 其 中 的 “換 行 ”( NEWLINE, 即 c中 的 ’0) 用 空 格 替 換 。 如 有 必 要 , 行 尾 會 填 充 空 格 。

unblock

用 “換 行 ”替 換 每 個 輸 入 塊 ( cbs 位 元 組 大 小 ) 末 尾 的 空 格 。

lcase

將 大 寫 字 母 轉 換 成 小 寫 。

ucase

將 小 寫 字 母 轉 換 成 大 寫 。

swab

交 換 每 對 輸 入 位 元 組 。 如 果 讀 入 的 位 元 組 數 是 奇 數 , 最 後 一 個 位 元 組 只 是 簡 單 的 複 製 到 輸 出 ( 因 為 沒 有 能 跟 它 交 換 的 位 元 組 了 ) ( POSIX 1003.26, PASC翻 譯 1003.2 3號 和 4號 ) 。

noerror

發 生 讀 錯 誤 時 , 繼 續 進 行 。

notrunc

不 截 斷 輸 出 檔 案 。

sync

用 0填 充 到 每 個 輸 入 塊 的 末 尾 , 使 其 大 小 為 ibs 位 元 組 。

GNU標 準 選 項

--help

將 用 法 資 訊 列 印 到 標 準 輸 出 , 併 成 功 退 出 。

--version

將 版 本 資 訊 列 印 到 標 準 輸 出 , 併 成 功 退 出 。

--

結 束 選 項 列 表 。

環 境 變 數

LANG, LC_ALL, LC_CTYPE和 LC_MESSAGES具 有 其 通 常 含 義 。

遵 循 標 準

POSIX 1003.2

舉 例

磁 帶 機 通 常 不 能 接 受 任 意 大 小 的 資 料 塊 , 當 最 後 一 個 數 據 片 段 不 能 充 滿 整 個 塊 時 , dd 將 出 現 I/O錯 誤 。 用 ’dd if=myfile of=/dev/mytape conv=sync’ 就 可 以 使 全 部 內 容 存 到 磁 帶 上 。 當 然 , 這 樣 做 , 把 檔 案 從 磁 帶 上 讀 回 時 回 產 生 一 個 稍 大 些 的 檔 案 , 因 為 其 尾 部 填 充 了 一 些 NUL( 空 字 元 ) 。

本 手 冊 頁 描 述 了 fileutils-4.0軟 體 包 中 的 dd 命 令 。 其 他 版 本 的 dd會 與 此 稍 有 不 同 。 有 關 更 正 和 補 充 可 以 發 帖 到 中 國 linux 論 壇 -man手 冊 版 。 報 告 程 式 中 的 錯 誤 , 請 給 fileutils-bugs2gnu.ai.wit.edu 發 郵 件 。

[中 文 版 維 護 人 ]

astonia <email>

[中 文 版 最 新 更 新 ]

2000/10/19

[中 國 Linux論 壇 man手 冊 頁 翻 譯 計 劃 ]

http://cmpp.linuxforum.net

本 頁 面 中 文 版 由 中 文 man 手 冊 頁 計 劃 提 供 。
中 文 man 手 冊 頁 計 劃 : https://github.com/man-pages-zh/manpages-zh