2013-11-21 101 views
2

我想在Linux腳本中創建一個循環,它將穿過一個目錄中的文件夾並將照片複製到一個文件夾並覆蓋具有相同名稱的照片。任何人都可以指出我的寫作方向嗎?Linux腳本循環

回答

3
find /path/to/source -type f -exec cp -f {} /path/to/destination \; 

會這樣嗎?請記住,這會覆蓋文件而不詢問。

如果您希望它在覆蓋前與您確認,請在cp命令中使用-i標誌(用於交互模式)。

0
find /path/to/source -type f | xargs -I {} file {} | grep <JPEG or image type> | cut -d ":" -f1 | xargs -I {} cp -rf {} /path/to/destination 

有了這個,你可以找到調整你的副本只選擇圖像類型。

0

實際上,您不需要通過文件夾循環查找使用腳本的照片,find命令將爲您完成這項工作。

嘗試使用findxargscp

find source_dir -type f -iname '*.jpg' -print0 | xargs -0 -I {} cp -f {} dest_dir 

替換*.jpg與照片文件格式。 (例如*.png等)

注意使用的cp-f的選擇,因爲你要使用相同的名稱覆蓋照片