从文件名中删除星号

从文件名中删除星号

我有一堆如下所示的文件名:

2501254200*.nc

我想删除星号。但是当我使用以下代码时:

mmv '***' '#1#2' 

我收到错误

2501254200*.nc -> : bad new name

Nothing done

如何从名称中删除 *?

答案1

我用得不mmv多,但在这里看起来您需要中间部分来与文件名中的字符*完全匹配。*由于*是一种模式,请尝试转义中间*

mmv '*\**' '#1#2' 

答案2

您需要转义*您想要字面使用的内容。尝试这个:

for file in *\**; do  mv "$file" "${file/\*/}"; done

或者,如果您已经安装(在 Debian 及其衍生产品(如 Ubuntu)上perl-rename安装):rename

rename 's/\*//' *

相关内容