File-Management

將一個目錄中的所有文件複製到同一父目錄下的所有目錄

  • April 5, 2019

我有一個父目錄 /home/test 並且在該目錄下我有多個目錄。名稱是 server{1..10},其中一個 server3 有一些我從遠端伺服器複製的文件。我嘗試使用 cp 但它不適合我。有沒有辦法將所有文件或一個文件從 server3 目錄複製到 /home/test 下的其餘伺服器目錄。

如果我了解您的需求,最簡單的方法是 for 循環:

myList="server1 server2 server4 server5 server6 server7 server8 server9 server10"
for myDir in $myList ; do cp server3/* $myDir/ ; done

最簡單的方法是在一個循環中執行此操作:

for i in ./server*; do cp ./server3/testfile* "${i}"; done

它將server3目錄的內容複製到目前路徑中的每個目錄。這也將嘗試將文件複製到同一目錄,但它只會列印出它們是相同的文件並繼續。

編輯: 為避免討厭的錯誤消息,您可以使用更具體的萬用字元增強 for 循環。例如跳過server3使用以下:server[1-24-9]

引用自:https://unix.stackexchange.com/questions/149301