linux - ubuntu/bash下递归重命名文件和目录

我想将所有包含“特殊”一词的文件和目录重命名为“常规”。它应该保持区分大小写,这样“特殊”就不会变成“常规”。

如何在 bash 中递归执行此操作?

最佳答案

使用find的解决方案:

仅重命名文件:

find /your/target/path/ -type f -exec rename 's/special/regular/' '{}' \;

仅重命名目录:

find /your/target/path/ -type d -execdir rename 's/special/regular/' '{}' \+

要重命名文件和目录:

find /your/target/path/ -execdir rename 's/special/regular/' '{}' \+

https://stackoverflow.com/questions/15012631/

相关文章:

python - Python 'buffer' 类型有什么用?

python - 在 ipython 笔记本中测量单元执行时间的简单方法

python - 如何在 Python 中创建命名空间包?

c - 如何在 Linux 上递归列出 C 中的目录?

linux - 如何将编译器的所有输出捕获到文件中?

python - python的Maven等价物

linux - cut 或 awk 命令打印第一行的第一个字段

linux - 在 Linux 的文本文件中用逗号替换空格

python - 将 MATLAB 代码转换为 Python 的工具

linux - SO_REUSEADDR(setsockopt 选项)的含义是什么 - Linux?