批处理文件中含%的REN命令无法执行的解决方法咨询
批处理文件中含%的REN命令无法执行的解决方法咨询
嗨,我来帮你搞定这个问题!你猜的完全没错——批处理解释器确实会把%当成变量的标识符,尤其是后面跟着@的时候,它会尝试去解析这个“变量”,结果就导致原本的文件名被错误识别,自然就跳过这个文件了。
要解决这个问题其实很简单,在批处理里如果要表示字面意义的%,只需要把单个%写成两个%%就行,这是批处理里的转义规则。
你只需要把原来的命令改成这样:
REN "40%% @ thesuper.ogg" "ZXS 40%% @ thesuper.ogg"
这样修改后,批处理解释器就会把%%解析成单个的%,不会再把它当成变量处理,就能顺利识别并重命名这个带%的文件啦。
另外补充个小知识点:如果是在命令行直接执行REN命令,单个%就可以正常工作,但在批处理文件里必须用双%来转义,这点要注意区分哦。
备注:内容来源于stack exchange,提问作者Aaron M J Fisher




