Terminal 重命名文件夹中的整个文件

Terminal 重命名文件夹中的整个文件,terminal,linux,Terminal,Linux,我有一个文件夹,文件名以db_filename开头,我需要将这个前缀db改为sd,但文件名应该相同有6768个文件有没有任何命令可以重命名这些文件。我在terminal中尝试了这些命令,但没有成功。我可以使用python轻松解决您的问题,使用以下脚本 import os parent = '/home/username/Tmp/dbfolder' # change it to your folder for p,d,f in os.walk(parent): for filename in

我有一个文件夹,文件名以db_filename开头,我需要将这个前缀db改为sd,但文件名应该相同有6768个文件有没有任何命令可以重命名这些文件。我在terminal中尝试了这些命令,但没有成功。

我可以使用python轻松解决您的问题,使用以下脚本

import os
parent = '/home/username/Tmp/dbfolder' # change it to your folder
for p,d,f in os.walk(parent):
  for filename in f:
    if filename.startswith('db'):
      path_ori = os.path.join(p,filename)
      path_new = os.path.join(p,'sd'+filename[2:])
      os.rename(path_ori, path_new)
您可以将代码粘贴到文本编辑器中,用文件夹名更改父文件夹名,并使用名称保存文件,如
rename.py

然后在终端中,键入
pythonrename.py
。完成。
当然,首先您应该确保您的计算机上安装了python。

如果使用(或windows下的
linux
工具):


rename在许多发行版上默认安装。

显示失败的命令
rename 's/^db/sd/' db_*