从 linux 中的多个文件名中删除“-template”部分
Remove "-template" part from multiple filenames in linux
我有一些文件的名称如下:
jcr-repository-template.xml
imapserver-template.xml
我想将它们重命名为:
jcr-repository.xml
imapserver.xml.
我尝试使用 find -name "*-template.*" -exec rename -v "template" "" {} ";"
它起作用了,但我只匹配了 "template" 而不是“-template”(我找不到如何)。所以现在我在每个文件名的末尾都有一个短划线字符。任何人都可以帮我吗?
在许多命令中,选项 --
可用于指示我可以测试的选项的结尾并且它有效:
touch imapserver-template.xml
rename -v -- -template '' imapserver-template.xml
否则另一种解决方案可以是使用不以 -
开头的等效正则表达式模式
rename -v '(?:-template)' '' imapserver-template.xml
我有一些文件的名称如下:
jcr-repository-template.xml
imapserver-template.xml
我想将它们重命名为:
jcr-repository.xml
imapserver.xml.
我尝试使用 find -name "*-template.*" -exec rename -v "template" "" {} ";"
它起作用了,但我只匹配了 "template" 而不是“-template”(我找不到如何)。所以现在我在每个文件名的末尾都有一个短划线字符。任何人都可以帮我吗?
在许多命令中,选项 --
可用于指示我可以测试的选项的结尾并且它有效:
touch imapserver-template.xml
rename -v -- -template '' imapserver-template.xml
否则另一种解决方案可以是使用不以 -
rename -v '(?:-template)' '' imapserver-template.xml