使用 bash 删除部分文件名

Ale*_*lex 2 bash loops glob file-rename batch-rename

为什么这个脚本不起作用?

for filename in bre*; do 
    rename 's/bre//'; 
done
Run Code Online (Sandbox Code Playgroud)

我在目录中有以 bre 开头的文件,我想从文件名中删除这部分。它正在运行,什么都不会发生,它还没有完成。谢谢

Bar*_*mar 5

你没有告诉rename它应该重命名哪些文件。

您不需要循环,因为您可以使用通配符作为文件名参数 rename

rename 's/bre//' bre*
Run Code Online (Sandbox Code Playgroud)