首页 > 解决方案 > 重命名树中具有包含在基本名称中的扩展名的文件

问题描述

我在 CentOS 服务器上的一个目录(以及许多子目录)中有一堆文件,这些文件的扩展名意外地粘在了基本名称上,就像这样。

12345jpg

我想将它们全部重命名为

12345.jpg

我很接近这个命令,但不能完全让重命名正则表达式工作。

find . -type f ! -name "*.*" -exec rename 's/([0-9]{5})(.*)/$1.$2/'

 

更新:使用 sed 而不是重命名会更好吗?像这样?(目前也不起作用)

find . -type f ! -name "*.*" -exec sed -i '' s/([0-9]{5})(.*)/1.2/g {} ;

标签: regexlinuxcentosfindrename

解决方案



推荐阅读