无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 2873|回复: 6
打印 上一主题 下一主题

批处理文件名也有讲究????

[复制链接]
跳转到指定楼层
1#
发表于 2009-9-5 23:39:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
2#
发表于 2009-9-5 23:43:34 | 只看该作者
省略后缀的时候,优先度 .com>.exe>批处理,但是当你把批处理名字改成与要执行的命令同名的时候

如果批处理所在目录和执行命令的文件不一致时,直接运行的时候,批处理会先找到自己,当然会出错

for %%i in (C D E F G H Y J K L M N O P Q R T U V W X Y Z) do echo Y|chkdsk.exe /f /x %%i:

这样改成chkdsk.bat也没问题了

[ 本帖最后由 NicTense 于 2009-9-5 23:45 编辑 ]
回复

使用道具 举报

3#
发表于 2009-9-6 00:36:38 | 只看该作者
com>bat>exe
回复

使用道具 举报

4#
发表于 2009-9-6 10:45:39 | 只看该作者
原帖由 haiou327 于 2009-9-6 00:36 发表
com>bat>exe


我刚刚特意测试了一下,在一个有exe文件的目录下,写一个与exe文件同名的bat文件,内容为 echo bat
不打后缀名的情况下,执行的还是exe文件
所以至少在我这里,exe>bat,版主是不是自己改过这个优先顺序啊

另外,同样是批处理 bat>cmd

对了,请教一下楼主,你的do后面的echo Y有什么作用的,我没弄明白这里为什么要先显示个Y
回复

使用道具 举报

5#
发表于 2009-9-6 11:38:04 | 只看该作者
以前学习纯DOS的时候,执行的优先级是COM>EXE>BAT。 XP下应该也是一样的吧?

如果楼主今天才知道这个问题,那么楼主的基本功没有打好,或者说是一上来就开始研究批处理,而没有学习DOS操作的相关知识。

看来基础知识还是相当重要的。

[ 本帖最后由 sgw888 于 2009-9-6 11:40 编辑 ]
回复

使用道具 举报

6#
发表于 2009-9-6 11:45:22 | 只看该作者
原帖由 NicTense 于 2009-9-6 10:45 发表


我刚刚特意测试了一下,在一个有exe文件的目录下,写一个与exe文件同名的bat文件,内容为 echo bat
不打后缀名的情况下,执行的还是exe文件
所以至少在我这里,exe>bat,版主是不是自己改过这个优先顺序啊 ...

echo y的作用就是显示字符y啊,这个很简单。关键是“|”可以把Y直接作为后面命令的输入。

说简单一点就是后面命令执行过程中会要求用户手动输入Y进行确认,因为是自动批处理,所以需要自动输入Y让程序继续下去,这样就可以用 echo y|  来作为后面命令的输入。
回复

使用道具 举报

7#
发表于 2009-9-6 13:34:01 | 只看该作者
原帖由 sgw888 于 2009-9-6 11:45 发表

echo y的作用就是显示字符y啊,这个很简单。关键是“|”可以把Y直接作为后面命令的输入。

说简单一点就是后面命令执行过程中会要求用户手动输入Y进行确认,因为是自动批处理,所以需要自动输入Y让程序继续 ...


原来是管道啊,我把它看成||了,所以觉得很奇怪,呵呵

基本上没用过chkdsk,原来这个也要确认的啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-16 06:46

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表