Board logo

标题: [系统相关] [已解决]批处理命令type的errorlevel值是哪些,分别是什么意思? [打印本页]

作者: YJDP    时间: 2012-6-19 14:52     标题: [已解决]批处理命令type的errorlevel值是哪些,分别是什么意思?

本帖最后由 YJDP 于 2012-6-20 15:59 编辑
  1. (type log.txt>>\\192.168.1.15\日志\log_server.txt 2>&1 && echo 日志同步到服务器成功||echo 日志同步到服务器失败,原因:%errorlevel%)>>log.txt_local
复制代码
此段代码是将本地的log.txt文本追加到服务器上的log_server.txt中,考虑网络可能会有故障,所以当写入失败时就会在本地的log.txt加上一句失败的记录和原因
我在没有开共享写入权限时,运行结果:errorlevel 返回的值为1,错误是“拒绝访问”。
然后我拨了网线再运行,运行结果:errorlevel 返回的值为1,错误是“不能访问网络位置。有关网络排除故障的信息,请参阅 Windows 帮助。”

难道type 的 errorlevel 返回的值只有1吗?网上只查到几个DOS命令的errorlevel 值是有1、2、3、4多个的,那其它的DOS命令都只有0和1 ?
如果只有0和1 ,我该又如何把错误信息记录下来。。。
作者: powerbat    时间: 2012-6-19 16:39

返回值是什么得看程序员的爱好,没有定律。
  1. (type log.txt>>\\192.168.1.15\日志\log_server.txt 2>tmp.log && echo 日志同步到服务器成功||(set/p=日志同步到服务器失败,原因:<nul&type tmp.log) )>>log.txt_local
复制代码

作者: forfiles    时间: 2012-6-19 19:20

  1. xxoo >test.log 2>&1
复制代码

作者: powerbat    时间: 2012-6-19 19:37

楼上的是回帖不看帖吧?看看人家楼主本来就是那样写的。。
作者: forfiles    时间: 2012-6-19 19:55

昂,会用2>&1,但是不会用2>new.log的用户,确实伤不起。
作者: 冷玉公子    时间: 2012-6-19 22:07

懒人的写法啊,思路还是不对。
给你一个思路
  1. @Echo Off
  2. Set "Var=0"
  3. Type 1.txt>2.txt && Set "Var=1"
  4. If %Var% = 1 (
  5.     echo ok
  6.     )else(
  7.     echo no
  8. )
复制代码

作者: YJDP    时间: 2012-6-20 15:58

4、5楼的答复的思路让我茅塞顿开。。。。
我一心想着从 errorlevel的值 下手了,自己钻牛角尖了,谢谢2位!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2