批处理文件_Tomcat_2010-5-23

来源:互联网 发布:算法实验结构的应用 编辑:程序博客网 时间:2024/05/21 11:31

@不显示它注释的命令

echo显示后边的字符串

echo off命令不显示bat文件中除echo off命令的其他命令

@echo off不显示所有命令

 

@startup.bat of Tomcat

**********************************************************

@echo off

 

if "%OS%" == "Windows_NT" setlocal

rem ---------------------------------------------------------------------------

rem Start script for the CATALINA Server

rem

rem $Id: startup.bat 908749 2010-02-10 23:26:42Z markt $

rem ---------------------------------------------------------------------------

 

rem Guess CATALINA_HOME if not defined

set "CURRENT_DIR=%cd%"             //初始化CURRENT_DIR为当前目录

//如果CATALINA_HOME不为空,跳转

if not "%CATALINA_HOME%" == "" goto gotHome

//设置CATALINA_HOME为当前目录

set "CATALINA_HOME=%CURRENT_DIR%"

//如果存在,跳转

if exist "%CATALINA_HOME%/bin/catalina.bat" goto okHome

//如果不存在,返回上级目录

cd ..

set "CATALINA_HOME=%cd%"

cd "%CURRENT_DIR%"

:gotHome                                               //跳转标记

if exist "%CATALINA_HOME%/bin/catalina.bat" goto okHome

//如果仍然无法找到catalina.bat,报错

echo The CATALINA_HOME environment variable is not defined correctly

echo This environment variable is needed to run this program

//跳转到结束

goto end

:okHome

 

set "EXECUTABLE=%CATALINA_HOME%/bin/catalina.bat"

 

rem Check that target executable exists

if exist "%EXECUTABLE%" goto okExec

echo Cannot find "%EXECUTABLE%"

echo This file is needed to run this program

goto end

:okExec

 

rem Get remaining unshifted command line arguments and save them in the

set CMD_LINE_ARGS=                    // CMD_LINE_ARGS值置为空

:setArgs

if ""%1""=="""" goto doneSetArgs

//传递命令行参数,一共有%1~%9个,%0表示当前bat文件的文件名,%1表示第一个参数,依次类推

set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1

//%1指向的参数追加到CMD_LINE_ARGS

shift

//使%1指向下一个命令行参数

goto setArgs

:doneSetArgs

 

call "%EXECUTABLE%" start %CMD_LINE_ARGS%           

//调用%EXECUTABLE%start%CMD_LINE_ARGS%作为参数

 

:end