Bash 重命名目录和子目录中所有文件和文件夹的简单方法?

Bash 重命名目录和子目录中所有文件和文件夹的简单方法?,bash,shell,Bash,Shell,我正在学习一些shell脚本。我需要一种简单的方法来重命名所有文件夹和文件名,而不考虑文件类型和大小写敏感度 例如,假设我有以下文件结构: 英雄文件夹 超人形象 超人.jpeg 超人与朋友.jpeg 超人视频 超人视频1.mp4 超人视频2.avi 我想做的是将所有这些中的字符串“super”替换为“bat”。最有效的方法是什么?在目录中执行以下操作: ls | while IFS= read -r -- i; do mv "$i" "${i/super/bat}" done

我正在学习一些shell脚本。我需要一种简单的方法来重命名所有文件夹和文件名,而不考虑文件类型和大小写敏感度

例如,假设我有以下文件结构:

  • 英雄文件夹
    • 超人形象
      • 超人.jpeg
      • 超人与朋友.jpeg
    • 超人视频
      • 超人视频1.mp4
      • 超人视频2.avi

我想做的是将所有这些中的字符串“super”替换为“bat”。最有效的方法是什么?

在目录中执行以下操作:

ls | while IFS= read -r -- i; do
mv "$i" "${i/super/bat}"
done

文件夹名称是否也应重命名?