find -exec
每次我遇到大問題時,我一直在使用或解析 ls 或使用 bash globbing 等為此創建簡單的 bash 函數,一次我不得不使用一種新方法,因為參數列表太長,另一次文件已經有一個當2
另一個檔案被重新命名為2
.
一次是unicode的問題,一次是檔案名稱中的空格問題,一次是檔案名稱中的*
or問題&
,等等。所以我想我應該來這裡向大家詢問最有效和最強大的通用方法來將目錄中的所有文件重命名為具有連續名稱無論!。無論檔案的名稱有多長,無論其原始名稱是什麼或副檔名是什麼,也無論其中是否包含非 ASCII 字元。
所以我的要求是:
- 它適用於長檔名。
- 它適用於 unicode 字元。
- 如果文件中有空格或特殊字符,它就可以工作。
- 它不會覆蓋另一個文件上的任何文件。
- 它盡可能快:D