Board logo

标题: [文件操作] [已解决]请教拖放文件命令怎样处理&特殊字符? [打印本页]

作者: his    时间: 2018-11-27 15:57     标题: [已解决]请教拖放文件命令怎样处理&特殊字符?

本帖最后由 his 于 2018-11-28 11:20 编辑
  1. "%~f1"
复制代码
这个拖放文件命令,不能识别有&字符的文件,例如456&789.txt,这个文件名只识别到456就没有了,请教有什么好的替代命令或方法?
作者: yhcfsr    时间: 2018-11-27 20:45

BAT搞不定的,只能VBS或JS
作者: tigerpower    时间: 2018-11-30 19:12

cmd拖放处理文件名的bug。当文件名包含&或^字符且没有空格,拖放处理文件名时,没有自动添加引号导致错误。
  1. @echo off
  2. setlocal enableDelayedExpansion
  3. set "args=!cmdcmdline:*%~f0=!"
  4. set "args=!args:~0,-1!"
  5. set "args=!args:* =!"
  6. for %%f in (!args!) do (
  7.     echo %%f
  8. )
  9. pause
  10. exit
复制代码
具体可参见此帖
作者: WHY    时间: 2018-11-30 20:19

批处理拖拽就是个茅坑,但很多人乐此不疲,非要往里跳。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2