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

[其他] [已解决]运行批处理为何会调用名字相似的批处理?

这两天一直在学习批处理,练习写了很多bat文件。我桌面上有两个批处理文件shutdown.bat和shutdown1.bat,
shutdown1.bat如下
  1. @echo off
  2. taskkill /f /IM ishare_user.exe
  3. pause
  4. shutdown /s /t 0
复制代码
shutdown.bat的代码如下
  1. taskkill /f /IM tm.exe
  2. pause
复制代码
当我双击shutdown1.bat文件时,发现它会自动调用shutdown.bat
显示如下
成功: 已终止进程 "ishare_user.exe",其 PID 为 2692。
请按任意键继续. . .
错误: 没有找到进程 "tm.exe"。
请按任意键继续. . .
我想起了dos文件名不得超过8个,是否因为这个所以cmd会将这两个文件当作一个文件执行呢。可我的系统是windows 7啊

[ 本帖最后由 haitianguyan102 于 2010-11-14 17:43 编辑 ]
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

把shutdown.bat换个名试试

TOP

正是,我换了就没事了,只是想知道到底是不是因为文件名是否不能超过8个,可是我刚才再次试的时候就没这回事了,真是奇怪,难道是我的系统在跟我开玩笑  一会这样一会那样  弄得俺头晕

TOP

回复 3楼 的帖子

再过几天你就不会这么晕了

TOP

这也行?没碰到过这么个情况累

TOP

貌似扩展名也不能超过三位…

TOP

回复 3楼 的帖子

不要把批处理文件命名为跟系统命令相同的名字
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

今天我的桌面上有4个批处理文件echo.bat  echo1.bat  echo2.bat  echo3.bat  我发现当我运行echo1.bat的时候完全不对劲,好像是在运行一个其它的文件,后来我试着将其它几个名称类似的文件移走,重新运行echo1.bat  才恢复正常  也许真的是因为文件名称中不能包含系统命令吧

TOP

命令如果当前目录存在(比如shutdown.exe/bat/cmd)则会优先执行这些。

[ 本帖最后由 jixun66 于 2010-11-11 04:16 编辑 ]

TOP

考古,不知道题主还在不在(因为,这些,文件在你运行的bat同目录,比如你试试bat写上一行,只有aaa三个字,然后在桌面上放个aaa.txt,运行看看是不是弹出了一个记事本。这是因为bat调用文件如果在它本体同目录下那么不需要路径只需要文件名就行。输入echo aaa,如果正常那就会显示aaa 如果同目录有个echo.bat那就变成调用echo这个文件,传入aaa作为参数了
一个六年级小学生,请多指教

TOP

返回列表