在 Linux 操作系統上複製文件很容易,無論是使用命令行還是圖形方式。但是,一些用戶更喜歡使用命令行來執行幾乎所有任務。命令行不僅僅提供了一種簡單快捷的方式來執行任務。 cp 是一個 Linux 命令,用於將文件從一個位置複製到另一個位置。但是,如果您需要將文件複製到多個位置怎麼辦? 有一種方法可以展示如何在 Linux 上執行此操作。
我在 Debian 10 操作系統上運行了本文中的命令和步驟,但它們也應該適用於其他 Linux 發行版。
首先,讓我們看看如何使用 cp 命令將文件從一個位置複製到另一個位置。 使用 cp 命令複製文件的一般語法是:
$ cp ~[/location/sourcefile] ~[/destinationfolder]
例如,將 testfile1 從 Documents 目錄複製到 Downloads 目錄。為此,我在終端中運行了以下命令:
$ cp ~/Documents/testfile1 ~/Downloads/
現在,如果您需要將文件複製到多個位置,則需要多次運行該命令。例如,以下示例將 testfile1 從 Documents 複製到兩個不同的位置:下載和桌面。為此,您需要在終端中運行 cp 命令兩次。
$ cp ~/Documents/testfile1 ~/Downloads/ $ cp ~/Documents/testfile1 ~/Desktop/
使用 echo 命令將文件複製到多個位置
使用 cp 命令將文件複製到兩個位置仍然是可以接受的,但假設您需要將文件複製到四個、五個或更多位置。在這種情況下,還有另一種使用 echo 命令的解決方案。命令語法如下:
$ echo [destination1] [destination2] [destiantion3]..... | xargs -n 1 cp [/location/sourcefile]
echo 命令通常在 shell 腳本中用於將消息打印或打印到屏幕上。但是,在這種情況下,使用它通過 | 將輸出提供給 xargs 命令。象徵。 xargs 從 echo 命令獲取三個輸入,執行三個 cp 操作,並將測試文件複製到三個不同的位置。上述命令中的 n 標誌告訴 cp 命令一次接受一個參數。
請注意,此命令會覆蓋目標目錄中已存在的同名文件。因此,建議您已經備份重要文件。
以下示例使用此命令將 testfile1 從 Documents 目錄複製到三個不同的目錄:Desktop、Downloads 和 Music 目錄。為此,我運行了以下命令:
$ $ echo [~/Desktop] [~/Downloads] [~/Music] | xargs -n 1 cp [/location/sourcefile]
那是我們所有的東西!現在您已經學會瞭如何使用一個命令將文件複製到多個目錄。因此,您不需要創建多個命令來執行將文件複製到多個位置的最簡單任務。