Rsync
dd
、cp
和 rsync
有什麼區別?
除了
man
頁面和--help
資訊中的解釋外,命令在哪些方面dd
以及cp
用於rsync
復製文件時有所不同?在哪種情況下,對於“優越”的某些定義,它們中的每一個都優於其他的,因此它應該得到優先使用?
它們是完全不同的動物,更適合不同的文件或設備操作案例:
dd
此命令是作為“複製和轉換”實用程序創建的,最初用於在 DEC 電腦的 ASCII、小端、字節流世界和 EBCDIC、大端之間轉換文件,第一次出現在Unix 版本 5 . 它已成為事實上的命令實用程序,可以在類 Unix 作業系統中操作可以映射為文件的所有內容(複製磁碟,備份 mbr,將磁碟複製為文件,複製一個設備文件的某些塊,寫入映像到 USB 棒..),並通過管道傳輸到其他命令,天空是極限。該軟體的一種替代方法是
dcfldd
命令。dd 相關資料:
- 有沒有辦法確定 dd 的 bs 參數的最佳值?
- 11 個很棒的 DD 命令
- 使用 dd 命令備份 Linux 的 6 個範例(包括磁碟到磁碟)
- dd 代表什麼?- 可以是“數據集定義”或“複製和轉換”,並重命名為
dd
僅因為cc
為 C 編譯器保留。取決於選擇一種命名理論;)
cp
製作文件和目錄的副本。這是一個更“更高”的抽象級別,您可以在其中遞歸地複制目錄,而無需關心塊大小、文件轉換等。它是處理文件複製、所有權“一對多”情況的更好工具,符號連結跟隨,遞歸複製和冗長。但是,它有其局限性,例如處理文件更改、遠端複製以及由
rsync
.cp相關資料:
- 是否可以看到 cp 速度和複製百分比?- 具體情況有
rsync
更好的工具來本地複製文件;)- cp -r 和 cp -R 之間的區別(複製命令)
rsync
可以在同一台電腦內復製文件,但它的功能在遠端複製場景中更有用。一些功能是所有權處理/操作,更簡單的“排除”表達式以獲得更好的副本,文件校驗和以查看文件是否已被複製,在 copu 期間或之後刪除原始文件,通過呼叫使用“透明外殼”該協議希望使用特定的 URI(
ssh://
,rsync://
…)、流水線和其他為遠端鏡像創建優化環境的東西。rsync 相關的東西:
延伸閱讀: