Board logo

标题: [文本处理] [已解决]文件名有空格如何用批处理for /f 正确执行,谢谢! [打印本页]

作者: xslxslxsl    时间: 2022-8-16 12:18     标题: [已解决]文件名有空格如何用批处理for /f 正确执行,谢谢!

这是网上关于md5的一段脚本:
  1. title md5批量生成脚本
  2. setlocal enabledelayedexpansion
  3. %~d0
  4. cd %~dp0
  5. if exist 1234.txt del 1234.txt
  6. for /R %%s in (.,*) do (
  7. echo %%s
  8. ) >>1234.txt
  9. if exist md5.txt del md5.txt
  10. for /f "skip=1 delims=" %%a in (1234.txt) do certutil -hashfile "%%a" MD5>>md5.txt
复制代码
路径下的所有含路径的文件名都存在1234.txt中,根据记录的文件名列表进行处理,如果保存的文件路径+文件名没有空格的情况下,能够正常输出,
但是如果文件名有空格则不能正常读取这个文件,从空格处断开,无法正常工作,
请问各位,遇到这样的情况应该如何书写批处理,谢谢大家的指点!

暂不考虑对%%s加""
作者: hfxiang    时间: 2022-8-16 12:30

解决办法见
http://bbs.bathome.net/redirect. ... 8328&ptid=63135
作者: flashercs    时间: 2022-8-16 16:24

  1. for /f "skip=1" %%a in (1234.txt) do certutil -hashfile "%%a" MD5>>md5.txt
复制代码

作者: xslxslxsl    时间: 2022-8-16 17:09

回复 3# flashercs


    找不到指定的文件,还是遇见空格,断开文件名,未能完整识别
作者: xslxslxsl    时间: 2022-8-16 17:21

谢谢,问题已经解决,自己在测试时不仔细,导致出错,谢谢大家!




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