如何删除Linux文件名中包括连字符和数字的后缀?

如何删除Linux文件名中包括连字符和数字的后缀?

我有一些像这样的文本文件

access-2018-08-21.log.1-20180906
access-2018-08-22.log.1-20180906

我想删除 -20180906 部分结果将是

access-2018-08-21.log
access-2018-08-22.log

我尝试过rename -- "s/\-20180906//g" *,但没有成功。

我需要什么命令行来实现我的目标?

答案1

尝试这个..

如果您对输出感到满意,则只需删除回显字即可。

for i in access*; do echo mv $i ${i%.*}; done

相关内容