windows批处理总结

rem echo off 表示之后所有命令行不显示,但命令结果总是会显示的!!  不存在%ROOT_DIR% 、 %CUR_DIR%的变量
rem @表示命令行不显示当前行,但命令结果总是会显示的!! ___ 对后面的行没影响! 参考 http://www.cnblogs.com/sgsoft/archive/2010/09/12/1824275.htmlhttp://www.cnblogs.com/freewl/archive/2008/11/02/1324805.html
@rem asffsaf
@echo 1234
echo off             
echo %ROOT_DIR%
cd ../linuxSocket
echo this is %%cd%%  %cd%
echo this is %%~dp0 %~dp0
echo %CUR_DIR%

dir
IF not ERRORLEVEL 1 goto aa1
IF ERRORLEVEL 0 goto aa2
:aa1
echo 123
:aa2
echo 456

@echo off 
rem (应先判断数值最高的错误码) 
  choice /c dme /m defrag,mem,end[Default:men]

  if errorlevel 3 goto defrag 

  if errorlevel 2 goto mem 

  if errorlevel 1 goto end 

  :defrag 
dir

echo 123

copy 

xcp 

mkdir

  C:\Users\LWX193~1\Desktop\

  goto end 

  :mem 

  mem 

  goto end 

  :end 

  echo good bye

一直有疑问的地方是 @ 的作用, echo off的作用, @echo off 这样的就更加糊涂了、、、 

一些用法也老是忘记。。

 

errorlevel  
1 不区分大小写,
2 如果需要在echo引用的话,需要用%包起来:

C:\Users\lwx193682\Desktop\linuxSocket>echo errorlevel
errorlevel

C:\Users\lwx193682\Desktop\linuxSocket>echo %errorlevel%
1

如果在if中则不能再用%包起来,否则报错:

if errorlevel 0 echo 123      —— if errorlevel integer doSth 应该是一种语法,不可变更, windows会自动计算%errorlevel % , 如果变成%%errorlevel %%则出问题。。

 

%x% 应该有直接计算的意思吧

 

每个命令都有自己的errorlevel 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值