|
polynominal
初级用户
 
积分 104
发帖 1
注册 2004-1-22
状态 离线
|
『楼 主』:
输入command/z可以看到命令的errorlevel
有人写过吗?:-)
写batch file的时候,很多errorlevel搞不清楚,怎么办呢?
输入command/z,以后运行的外部命令的errorlevel就可以
看见了
|
|
2004-2-2 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27735
发帖 10521
注册 2002-10-9
状态 离线
|
『第
2 楼』:
谁都知道嘛。。
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2004-2-3 00:00 |
|
|
willsort
元老会员
         Batchinger
积分 4432
发帖 1512
注册 2002-10-18
状态 离线
|
『第
3 楼』:
Re polynominal:
可惜DOS6。X及其以下版本不支持,我目前正在构想获得ERRORLEVEL的高效率的BATCH,不存在我所说的问题很快可以完成了。
Re Wengier:
太绝对了吧?
|

※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得! |
|
2004-2-3 00:00 |
|
|
roy
管理员
          專業島民
积分 4869
发帖 1633
注册 2002-12-10
状态 离线
|
『第
4 楼』:
Quote: | 以下是引用willsort在2004-2-3 13:40:21的发言:
Re polynominal:
可惜DOS6。X及其以下版本不支持,我目前正在构想获得ERRORLEVEL的高效率的BATCH,不存在我所说的问题很快可以完成了。 |
|
這個就是:
:: Author: Leonardo Pignataro (secret_doom@hotmail.com)
:: Trace errorlevel
@echo off
for %%? in (0 1 2) do if errorlevel=%%?00 set D1=%%?
for %%? in (0 1 2 3 4 5 6 7 8 9) do if errorlevel=%D1%%%?0 set D2=%%?
for %%? in (0 1 2 3 4 5 6 7 8 9) do if errorlevel=%D1%%D2%%%? set D3=%%?
set err=%D1%%D2%%D3%
for %%? in (D1 D2 D3) do set %%?=
echo %err%
|

我的網站:http://mw16.2ya.com/ 我的網誌: http://scrappedblog.blogspot.com/
~
我的Winamp正在播放的歌曲:
 |
|
2004-2-3 00:00 |
|
|
willsort
元老会员
         Batchinger
积分 4432
发帖 1512
注册 2002-10-18
状态 离线
|
『第
5 楼』:
Re roy:
思路不错,可以作为我完成下帖的参考。只是麻烦你 IF ERRORLEVEL 后面别用=好不好,会加深误解的。
http://model.chinajewelry.net/dos/dosbbs/dispbbs.asp?boardID=6&ID=9358
[此贴子已经被作者于2004-2-3 20:31:15编辑过]
|

※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得! |
|
2004-2-3 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27735
发帖 10521
注册 2002-10-9
状态 离线
|
『第
6 楼』:
willsort:
关于COMMAND /Z,因为我在网站中曾做为DOS的未公开用法介绍过,所以我才认为大家应该都已知道了。
其实ERR2ENV也许更好用。
至于DOS 6.x及以下版本,那就没有什么意义了。那么旧的DOS版本,已没有什么使用介值,当然也不支持这些新功能了。
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2004-2-3 00:00 |
|
|
roy
管理员
          專業島民
积分 4869
发帖 1633
注册 2002-12-10
状态 离线
|
『第
7 楼』:
Quote: | 以下是引用willsort在2004-2-3 20:29:42的发言:
Reroy:
思路不错,可以作为我完成下帖的参考。只是麻烦你IFERRORLEVEL后面别用=好不好,会加深误解的。
http://model.chinajewelry.net/dos/dosbbs/dispbbs.asp?boardID=6&ID=9358 |
|
ERRORLEVEL是變數啊,就如%COMSPEC%一樣,可以用"="的
更何況錯的不是我,是Leonardo Pignataro 啊
[此贴子已经被作者于2004-2-4 7:15:23编辑过]
|

我的網站:http://mw16.2ya.com/ 我的網誌: http://scrappedblog.blogspot.com/
~
我的Winamp正在播放的歌曲:
 |
|
2004-2-3 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27735
发帖 10521
注册 2002-10-9
状态 离线
|
『第
8 楼』:
Roy:不对呀,又不是WinNT/2K/XP的“命令提示符”下。纯DOS下的ERRORLEVEL不是变量,而是IF的一种特别用法,即:IF ERRORLEVEL ...
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2004-2-4 00:00 |
|
|
willsort
元老会员
         Batchinger
积分 4432
发帖 1512
注册 2002-10-18
状态 离线
|
『第
9 楼』:
Re Wengier:
现在的人见了宝贵资料收藏的多,研读的少,多少人都是用到了再上论坛来问。所以,信息的普及不在于其是否公开,而在于受众是否有获知的渴望。
Re Roy:
Wengier 的说法很对,errorlevel 是作为 if 的命令分支使用的。即使在98和xp下我也没有见到这个环境变量。而如果这个ERRORLEVEL是环境变量,那这个程序本身就失去了意义,因为程序的目的就是为了将ERRORLEVEL值赋给环境变量的。即使假设Leonardo Pig是作为变量使用的,那也应该用==,否则就是语法错误。所以这里可以肯定他是作为命令分支使用的。
而作为命令分支,ERRORLEVEL 与value之间的关系就应该是大于等于,而非等于,所以我才说=有误导之嫌。而为什么用=可以使用呢?因为ERRORLEVEL 与value之间本是用空格隔的,而DOS命令行对单个=又是忽略解释的,这点与;和空格是一致的,不信你可以做一个测试。
::test.bat
echo First:%1
echo Second:%2
c:\test 111 222
c:\test 111;222
c:\test 111=222
另外,在dos命令行中还存在很多做特殊解释的字符,大家可以多测试一下。重定向符号太熟悉了,就免了
[此贴子已经被作者于2004-2-4 18:47:12编辑过]
|

※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得! |
|
2004-2-4 00:00 |
|
|
dosfroum
初级用户
 
积分 154
发帖 54
注册 2005-9-25
状态 离线
|
『第
10 楼』:
請問我在windows 2000底下打了 怎麻沒反應
commnad下或是cmd下
打COMMAND /Z 只跳到下一行
|
|
2005-10-1 10:49 |
|
|
bush
银牌会员
    
积分 2165
发帖 730
注册 2004-4-21
状态 离线
|
『第
11 楼』:
FREEDOS就沒有這個功能!
|
|
2005-10-1 15:54 |
|