重命名所有文件

重命名所有文件

我有 800 个文件,命名为:

Centrum.text.201601-01
Centrum.text.201601-02 

直到 30 一个月 01 等等所有 12 个月。

我想要的是将所有文件一次重命名为:

Centrum.201601-01.text
Centrum.201602-12.text

相应月份依此类推。

如果可能的话,单行。操作系统——rhel5

答案1

尝试

 rename -n 's/Centrum.text.(.*)/Centrum.$1.text/' Cen*

预览

  • s/Centrum.text.(.*)/Centrum.$1.text/指示更换(移动内部图案)

然后

rename  's/Centrum.text.(.*)/Centrum.$1.text/' Cen*

编辑:

如果您没有重命名,并且从包含文件的目录中

ls -1 | awk -F. '/Centrum/ {printf "mv %s.%s.%s %s.%s.%s\n",$1,$2,$3,$1,$3,$2}'

用于预览

  • -1(每行一个文件) inls可能没用,但以防万一您有 ls 的别名。
  • /Centrum/按文件名过滤
  • {printf "mv %s.%s.%s %s.%s.%s\n",$1,$2,$3,$1,$3,$2}交换日期和文本字段。

| bash如果一切顺利,请在最后添加。

相关内容