批处理脚本删除最后一个特定文件扩展名或使用特殊替换规则

批处理脚本删除最后一个特定文件扩展名或使用特殊替换规则

如何设置 .bat 脚本以使用以下替换逻辑从当前文件夹中的所有文件中删除并替换特定的文件扩展名?

我想要的只是始终删除最后一个扩展名
,并且仅当最后一个扩展名与“.hhll”完全匹配时才执行此操作


否则,对于相同结果采用不同的方法:应为所有这些文件单独定义新的文件扩展名替换文本,当前文本位于末尾的文件扩展名点和文件扩展名点之前的下一个点之间。
(这两个点之间的字符数各不相同)

例子:

文件名中实际上是 . )
当前文件夹内容:
fontmapTXThhll
字体图TXT环境变量哈哈

.bat 脚本必须仅用以下方式替换 hhll 扩展名:
fontmap.txt --> txt 是新的文件扩展名
fontmap.txt.envm --> envm 是新的文件扩展名

答案1

好吧,处理这个问题的第二个想法可能不必要地过于复杂。
对于简单的想法在我的处境下,删除所有可能的.hhll

for %%F in (*hhll*) do ( set "name=%%F" ren "!name!" "!name:.hhll=!" )

相关内容