我有一个 JAR 文件,其版本号附加在文件名中,每次从外部存储库重建时,我想在 crontab shell 脚本中将其重命名为通用名称。例如:“example-1.9.4.jar”应重命名为“example.jar”,以便所有版本共享相同的文件名(任何给定目录中一次不存在多个版本)。我正在考虑将正则表达式与重命名命令一起使用,但我不知道如何处理确切的子字符串模式。
如何使用重命名命令从文件名中删除版本号?
最佳答案
使用rename
实用程序,您可以执行以下操作:
rename -n 's/-(\d+\.)+jar$/.jar/' *.jar
如果重命名
不可用,则使用:
for f in *.jar; do
mv "$f" "${f/-[0-9]*jar/.jar}"
done
关于Linux:使用精确的子字符串重命名文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37304964/