File-Copy
根據條件複製文件
這是我試圖解決的問題:
- 假設我有一個目錄“A”,其中包含一些文件以及一些其他目錄。
- 我想將目錄A下的所有文件直接複製到目錄B。
- 我想遞歸地將文件夾 A 中的所有文件夾複製到文件夾 C。
在 UNIX/Linux 中完成此任務的最短且較少特定於平台的方法是什麼?
大概是這樣的
find A -type f -maxdepth 1 -exec cp {} B/ \;
和
find A -type d -maxdepth 1 -mindepth 1 -exec cp -r {} C/ \;
標誌在哪裡
-type
,確定您要查找的類型(文件或目錄)、- maxdepth
目錄的深度以及-exec
對結果執行命令。
你可以
cp
用來複製目錄,給出一個以/
,結尾的 glob 模式cp -a A/*/ C/
-a
並且您可以在沒有(類似於-r
)選項的情況下複製文件cp A/* B/
儘管最後一個命令會在未複製的目錄上產生無害的錯誤。