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

[其他] BAT调用TXT文件,并在后台执行,为什么提示找不到文件?

:bat文件
  1. @echo off
  2. for /f "delims=*" %%a in (C:\out.txt) do start "" "%%a"
  3. pause>nul
复制代码
:txt文件(out.txt)
  1. @echo off
  2. if "%1"=="h" goto begin
  3. start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
  4. :begin
  5. cmd /c netsh interface ip set address name="本地连接" source=static addr=192.168.0.152 mask=255.255.255.0 gateway=192.168.0.1 gwmetric=1
复制代码
思路:
通过BAT调用TXT文件,并在后台执行,然后退出

出现结果:(桌面出现2个CMD窗口,其中一窗口出现以下内容)
系统找不到文件@echo off 。
系统找不到文件if "%1"=="h" goto begin 。
系统找不到文件start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit 。
系统找不到文件:begin 。
最后一行执行了

求助:
请各位看看问题出现在那里,最好不更改思路框架,谢谢!

bat 文件不觉得多余吗?txt直接改bat运行不好吗?不能直接运行txt内的代码

TOP

start "" "%%a" 只能执行外部命令,不能执行内部命令,所以除了 cmd /c ... 之外的行都会报错
而且如楼上所说,保存为 txt 是多此一举

TOP

很好很不错,多多学习

TOP

返回列表