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

[文本处理] [已解决]批处理用echo写入文本出现问题

本帖最后由 LTSC1809 于 2023-7-11 20:23 编辑

我做了个某游戏启动器,其中如果bat所在的文件夹下没有YSFI.ldt这个文件那么他会自动搜索文件路径,然后让你输入一些内容最后把这些内容全部写入到一个文本中,但是现在发现生成的文件是空白的,我把那个echo %yscon%>%cd%\YSFI.ldt那行的%yscon%加上双引号变成"%yscon%",这次文件不是空白了,但是内容被双引号包裹了,我希望去掉双引号又能把内容写入进去,谢谢,代码如下:
  1. @echo off
  2. :mks
  3. title Hello Genshin! Lancher-The First Edition
  4. color F0
  5. echo Hello Genshin! Lancher 第一版
  6. echo.
  7. if not exist %cd%\YSFI.ldt goto FYF
  8. for /f "delims=; tokens=1" %%i in (%cd%\YSFI.ldt) do set ysfivr=%%i
  9. for /f "delims=; tokens=2" %%n in (%cd%\YSFI.ldt) do set to=%%n
  10. for /f "delims=; tokens=3" %%m in (%cd%\YSFI.ldt) do set wait=%%m
  11. :star
  12. echo 键入"star"并回车来启动游戏;输入"help"来获取帮助以及更多指令操作:
  13. set /p star=^>
  14. if %star% equ fi echo %ysfivr%
  15. if %star% equ find goto FYFzy
  16. if %star% equ help goto help
  17. if %star% equ down start https://ys.mihoyo.com/
  18. if %star% equ star goto startys
  19. echo 无效输入
  20. pause
  21. goto star
  22. :startys
  23. echo 正在启动游戏:
  24. echo 运行:游戏exe主文件【%ysfivr%】
  25. "%ysfivr%"
  26. echo 游戏已退出或启动失败
  27. pause
  28. exit
  29. :FYFzy
  30. echo 这将花费几分钟的时间并且将会清空原本的YSFI.ldt,你确定要搜索文件吗?
  31. set /p yn=(Y/N):
  32. if %yn% equ Y goto FYF
  33. cls
  34. goto mks
  35. :FYF
  36. echo 正在搜索游戏主文件...
  37. set "FileName=YuanShen.exe"
  38. for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
  39. if exist %%a:\ (
  40. for /f "delims=" %%b in ('dir /a-d /s /b "%%a:\*%FileName%" 2^>nul') do (
  41. if /i "%%~nxb" equ "%FileName%" (
  42. set YSFIV=%%b
  43. set a=1
  44. )
  45. )
  46. )
  47. )
  48. if not defined a (echo 未找到游戏路径,请自行下载。
  49. echo 官网:
  50. echo https://ys.mihoyo.com/
  51. echo 三秒后自动为你打开
  52. timeout 3
  53. start https://ys.mihoyo.com/
  54. pause
  55. exit)
  56. echo 找到文件:
  57. echo %YSFIV%
  58. echo 配置文件被清空,需要写入:
  59. echo ●启动超时的指定时间
  60. set /p tio=请输入-我们不建议您输入4以下的数字,这很有可能造成误判(单位为秒):
  61. echo ●游戏退出检测间隔时间
  62. set /p waitt=请输入-较高的值有助于快速反应,但是这会造成更高的性能开销(单位为秒):
  63. echo ●游戏文件的路径
  64. set yscon=%YSFIV%;%tio%;%waitt%
  65. echo %yscon%>%cd%\YSFI.ldt
  66. echo 配置文件 已经保存成功
  67. echo 请重启启动器...
  68. pause
  69. exit
  70. :help
  71. cls
  72. echo ===帮助部分===
  73. echo 这个启动器还在开发中,bug巨多,还请谅解呢qwq
  74. echo 如果启动时报毒,那就是因为米哈游的谜之反作弊组件,不用管,点允许就行
  75. echo ===命令===
  76. echo down-帮你用浏览器打开原神官网
  77. echo fi-显示游戏主文件路径
  78. echo find-重新搜索游戏
  79. goto mks
复制代码
一个六年级小学生,请多指教

回复 1# LTSC1809


    >%cd%\YSFI.ldt echo %yscon%
QQ 1980286392

TOP

回复 1# LTSC1809


第65行改成这样试试:
  1. >"%cd%\YSFI.ldt" echo,%yscon%
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

已经解决,感谢大家的支持
一个六年级小学生,请多指教

TOP

返回列表