Board logo

标题: [文件操作] [已解决]BAT命令 for /f in 怎样处理带空格的文件名 [打印本页]

作者: gwinkle    时间: 2021-1-20 13:35     标题: [已解决]BAT命令 for /f in 怎样处理带空格的文件名

  1. @echo off & setlocal enabledelayedexpansion & chcp 65001
  2. set i=1
  3. for /f "delims=^" %%a in (3 哈哈哈.srt) do (
  4. set /a j=!i! %% 3
  5. if !j!==0 echo %%a >> 哈哈哈.txt
  6. set /a i+=1
  7. )
  8. pause
复制代码
测试报错 The system cannot find the file 3

如果加上双引号 in ("3 哈哈哈.srt") 的话,%%a 就是字符串 "3 哈哈哈.srt",不是这个 srt 文件每一行的内容

请教如何处理才能读取每一行的内容?
作者: qixiaobin0715    时间: 2021-1-20 13:54

那就in ('type "%%a"')试试
作者: gwinkle    时间: 2021-1-20 14:07

回复 2# qixiaobin0715


    谢谢啊!可以了哈哈
作者: lancer    时间: 2021-1-20 14:10

文件名中有特殊字符的,请用增强型句式
for /f "usebackq" %%i in ("文件名") do (……)
或者像2楼,换个写法。




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