Linux

scp 可以遞歸複製目錄嗎?

  • November 4, 2021

目前我只能複制一個.tar文件。但是我怎樣才能遞歸地複制目錄scp呢?

是的,使用-r

scp -rp sourcedirectory user@dest:/path
  • -r 表示遞歸
  • -p 保留原始文件的修改時間、訪問時間和模式。

注意:這會創建sourcedirectory內部,/path因此文件將在/path/sourcedirectory

雖然以前的答案在技術上是正確的,但您也應該考慮rsync改用。 rsync將發送方和接收方的數據與差異機制進行比較,因此它不必重新發送之前已經發送的數據。

如果您要多次將某些內容複製到遠端電腦,請使用rsync. 實際上,rsync每次使用都很好,因為它對複製文件權限和所有權以及排除某些文件或目錄等事情有更多控制。一般來說:

$ rsync -av /local/dir/ server:/remote/dir/

將本地目錄與遠端目錄同步。scp如果您再次執行它並且本地目錄的內容沒有改變,則不會傳輸任何數據 - 比每次執行和複製所有內容要高效得多。

此外rsync,與scp.

最後,預設情況下,現代版本rsync通過 ssh 執行,因此如果scp已經在工作,rsync則幾乎應該是一個替代品。

引用自:https://serverfault.com/questions/264595