在linux中从多个文件名中删除“-template”部分

在linux中从多个文件名中删除“-template”部分,linux,bash,pattern-matching,rename,filenames,Linux,Bash,Pattern Matching,Rename,Filenames,我有一些文件的名称如下: jcr-repository-template.xml imapserver-template.xml 我想把它们重命名为: jcr-repository.xml imapserver.xml. 我尝试使用find-name*-template.*-exec rename-v template{} 它起作用了,但我只匹配了模板,而没有-模板我找不到如何匹配。现在我在每个文件名的末尾有一个破折号字符。有人能帮我吗 在许多命令中,选项-可用于指示我可以测试的选项的结束,

我有一些文件的名称如下:

jcr-repository-template.xml
imapserver-template.xml
我想把它们重命名为:

jcr-repository.xml
imapserver.xml.
我尝试使用find-name*-template.*-exec rename-v template{}

它起作用了,但我只匹配了模板,而没有-模板我找不到如何匹配。现在我在每个文件名的末尾有一个破折号字符。有人能帮我吗

在许多命令中,选项-可用于指示我可以测试的选项的结束,它起作用了:

touch imapserver-template.xml
rename -v -- -template '' imapserver-template.xml
否则,另一个解决方案可以是使用一个等效的regex模式,它不是以-

非常感谢。我使用find-name-template-exec rename-v--模板{};正如你所说的,它成功了!
rename -v '(?:-template)' '' imapserver-template.xml