windows 批处理学习笔记
在C:\Documents and Settings\meiyoudao>下面建立一个test.bat文件
在文件中输入
dir
ping 127.0.0.1
打开一个cmd窗口(输入test回车,即可运行命令)
C:\Documents and Settings\meiyoudao> test
在文件中输入
@dir
@ping 127.0.0.1
就不会显示命令
可以用一条语句echo off 把命令都隐藏起来. 同时要把echo off 也隐藏起来,就需要@echo off
@echo off
dir
ping 127.0.0.1
即可
======================================================================
@ehcho off //关闭命令内容显示,只显示结果
if"%OS%" == "Windows_NT" setlocal //如果系统变量是Windows_NT,就环境改动的本地化操作
rem if"%OS%" == "Windows_NT" setlocal //注释使用
if not "%CATALINA_HOME%" == "" goto gotHome //如果环境变量CATALINA_HOME不等于空,就goto 到 gotHome 跳转到标记位置:gotHome
:gotHome // 标记位置
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome //如果该文件存在,就跳转
:okHome // 标记位置
set EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat //初始化一个变量
set CMD_LINE_ARGS= //初始化一个变量
if "%1" == """" goto okHome //如果参数1不为空,就设置为CMD_LINE_ARGS的原值串上%1参数值
set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1
call "%EXECUTABLE%" start %CMD_LINE_ARGS% //运行另一个批处理,并把CMD_LINE_ARGS变量作为参数串过去, start 为第一个参数
============================================================
text.bat代码为:
echo %0 %1 %2
C:\Documents and Settings\meiyoudao>test.bat 4 34
test.bat 4 34
//%0 表示参数0 为 test.bat
//%1 表示参数1 为 4
//%2 表示参数2 为 43
=====================================================================
text.bat代码为:
shift
echo %0 %1 %2
C:\Documents and Settings\meiyoudao>test.bat 4 34 555
test.bat 4 34
//%0 表示参数0 为 4
//%1 表示参数1 为 43
//%2 表示参数2 为 555
//注:详细请看 help shift
//更改批处理文件中可替换参数的位置。
//SHIFT [/n]
//如果命令扩展名被启用,SHIFT 命令支持/n 命令行开关;该命令行开关告诉
//命令从第 n 个参数开始移位;n 介于零和八之间。例如:
// SHIFT /2
//会将 %3 移位到 %2,将 %4 移位到 %3,等等;并且不影响 %0 和 %1。
======================================================================
获取if语句的帮助信息
C:\Documents and Settings\meiyoudao> help if
C:\Documents and Settings\meiyoudao>help setlocal
开始批处理文件中环境改动的本地化操作。在执行 SETLOCAL 之后
所做的环境改动只限于批处理文件。要还原原先的设置,必须执
行 ENDLOCAL。达到批处理文件结尾时,对于该批处理文件的每个
尚未执行的 SETLOCAL 命令,都会有一个隐含的 ENDLOCAL 被执行。