
我有一個包含多個子資料夾的檔案結構,我想在其中搜尋包含特定字串(“sub*”)的所有子資料夾,然後將這些找到的資料夾中的所有檔案從各自的位置向上移動一級。甚至可能刪除當時的空白資料夾,但我也可以透過第二步來做到這一點。
答案1
這應該可以做到:
find /path/to/base/folder/ -type d -name 'sub*' -exec bash -c 'mv {}/* "$(dirname {})"' \;
筆記:這不會移動隱藏檔案(其名稱以 開頭.
)
答案2
find /path/to -type f -execdir mv {} .. \;