[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 批处理echo到txt时,如果有特殊情况一定要引号,如何在txt中没有引号

本帖最后由 yunyan100 于 2017-12-8 21:12 编辑

Rt,这是一个特殊路径里面有空格,(2)这些情况,当在这个目录下查找到的exe文件,就要把这个exe的路径(D:\OtherSoft\文件夹 - 副本 (2)\*.exe)写入到txt中,但因为特殊(用dir查找和for写txt),所以要"D:\OtherSoft\文件夹 - 副本 (2)\*.exe"才能写入txt,如何不写入txt中引号呢?谢谢各位专业人士
  1. (for /f "delims=" %%a in ('dir /b "%patt%\*.exe"') do ( set /a n%%=99&set /a n+=1
  2. if /i "%gg%" equ "n" (echo !n!:%%a>>%dp%\st\exe.txt)else (echo !n!:"%pat%\%%a">>%dp%\st\exe.txt)
  3. echo.                              !n!:%%a))
复制代码
  1. D:\OtherSoft\文件夹 - 副本 (2)
复制代码

本帖最后由 yunyan100 于 2017-12-8 22:16 编辑

回复 2# 0000


    首先感谢你,就是for只会一点,如果只用for找出来是显示全路径,dir /b就是只显示最低的文件(夹)名,我试试,谢谢
测试了,还是有引号?

1:"D:\OtherSoft\文件夹 - 副本 (2)\Dism++.exe"
2:"D:\OtherSoft\文件夹 - 副本 (2)\Dism++x64.exe"
3:"D:\OtherSoft\文件夹 - 副本 (2)\main.exe"

感谢你的提醒,我用这段完美了,echo输出也不用引号了,因为我想起了%`nx是去掉前面的,哈哈,谢谢
  1. (for %%a in ("%pat%\*.exe") do ( set /a n%%=99,n+=1
  2. if /i "%gg%" equ "n" (echo !n!:%%a>>%dp%\st\exe.txt  ) else (   echo !n!:%%a>>%dp%\st\exe.txt  )
  3. echo.                           !n!:%%~nxa))
  4. pause
复制代码

TOP

本帖最后由 yunyan100 于 2017-12-8 22:29 编辑

回复 2# 0000


tks

TOP

返回列表