【发布时间】:2010-12-22 15:14:39
【问题描述】:
我有很多要重命名的文件,我尝试创建一个正则表达式来匹配它们,但即使我被困在文件上,这些文件的命名方式如下:
文件名 01
文件名 100
文件名 02
文件名 03
等,我想在任何小于 100 的文件后面添加一个“0”(零),如下所示:
文件名 001
文件名 100
文件名 002
文件名 003
我最接近匹配它们的是使用这个 find -type d |排序-r | grep ' [1-9][0-9]$' 但是我不知道如何替换它们。提前感谢您提供的任何帮助。我在 CentOS 上,如果有帮助的话,所有这些都是通过 SSH 完成的。
【问题讨论】:
-
你的文件名是否真的包含空格?
-
是的,它们看起来像:“文件名 01”“文件名 101”
-
您能详细说明机器上可用的“工具”吗?你有 perl、python、ruby 或类似的安装吗?
-
您能否澄清您要匹配的文件的名称是哪些,以及您要避免匹配的文件名称是哪些?我在这里有点困惑。
-
Perl (5.8.8) 在机器上,但是 python 和 ruby 没有,我很熟悉可以通过 yum 并在必要时安装它们。