我试图用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