重命名文件并从上次删除

Sub*_*rel 3 command-line extension scripts files batch-rename

什么是“命令行”“从文件名的末尾删除某些字符。例如,subash.jpg.jpg。我想从最后删除“ .jpg ”。我一直遇到“重命名文件”的问题.

pa4*_*080 5

rename是文件重命名的完美命令 :) 它具有比mv正则表达式更广泛的选项,并且也可以与正则表达式一起使用。在您的情况下,以下语法必须完成这项工作:

rename 's/\.jpg\.jpg$/.jpg/' *.jpg.jpg
Run Code Online (Sandbox Code Playgroud)

解释:

  • 表达式s/searched/replace/意味着用字符串s替换searched表达式replace
  • \.jpg\.jpg$将匹配任何行两端$.jpg.jpg,这里的反斜杠将难逃正则表达式中的点的特殊含义。
  • *.jpg.jpg将被 shell 展开为.jpg.jpg以当前目录结尾的所有文件的列表。

如果您的系统中不存在该命令,则需要安装它:

sudo apt update && sudo apt install rename
Run Code Online (Sandbox Code Playgroud)