我試圖用shell腳本將所有目錄和文件重命名爲大寫。我有作品,但不適用於子目錄。由於在腳本執行期間目錄名稱正在改變,我得到的東西如mv: cannot stat './def/two/three': No such file or directory
UNIX將文件/目錄重命名爲大寫
我試過用-depth
查找,所以它會從下往上重命名。但仍遇到同樣的問題。我雖然關於使用cut
來拆分/
上的路徑並重命名,但是無所適從。
這是我有:
我將不勝感激任何方向,因爲我覺得這應該是一個共同的任務,但未能找到一些谷歌搜索一個可行的解決方案。我的發行版不支持rename
。
我建議搬到超級用戶。 – Teddy 2010-11-24 16:01:01
如果你有Perl,`rename`是一個非常簡單的Perl腳本。你可以使用它來代替二進制文件(它不那麼強大)。關於重命名文件和目錄,有幾十個關於重命名文件和目錄的問題,甚至還有一些關於[深度優先](http://stackoverflow.com/search?q=%2Brename+%2Bdepth)的問題。 – 2010-11-24 17:16:59
可能重複的[如何在Linux上將所有文件夾和文件重命名爲小寫?](http://stackoverflow.com/questions/152514/how-to-rename-all-folders-and-files-to-lowercase-on -linux) – 2010-11-24 17:17:46