tomcat中的startup.bat研究记录

目的

记录研究startup.bat文件时遇到的不懂的内容的记录

命令

echo xxxxx: 在dos窗口上输出提示信息
@echo off,echo off关闭输出显示;@关闭echo off本条语句的输出显示
cd ..:返回上级目录
cd /:进入跟目录
goto okHome:跳转到 okHome标签处(标签表示:“:okHome”,以“:”开头后接非“:”的字符)
goto end:结束

setlocal & set

set xxx = "hello world" 是定义变量
setlocal主要针对临时环境变量,不会影响到系统的变量环境设置,应与endlocal联用。

环境变量

%cd%:当前路径
%OS%:Windows系统下默认应该都是"Windows_NT"。
%1:表示传递给该批处理文件的第一个参数。

判断文件是否存在

exist "%CATALINA_HOME%\bin\catalina.bat"

看tomcat启动的dos窗口信息

改写 call "%EXECUTABLE%" start %CMD_LINE_ARGS%
1、记录到文本中 call "%EXECUTABLE%" run %CMD_LINE_ARGS% >> ..\logs\catalina.txt
2、输出到窗口上 call "%EXECUTABLE%" run %CMD_LINE_ARGS%

startup.bat文件内容

@echo off
rem
rem Licensed to the Apache Software Foundation (ASF) under one or more
rem contributor license agreements.  See the NOTICE file distributed with
rem this work for additional information regarding copyright ownership.
rem The ASF licenses this file to You under the Apache License, Version 2.0
rem (the "License"); you may not use this file except in compliance with
rem the License.  You may obtain a copy of the License at
rem
rem     http://www.apache.org/licenses/LICENSE-2.0
rem
rem Unless required by applicable law or agreed to in writing, software
rem distributed under the License is distributed on an "AS IS" BASIS,
rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
rem See the License for the specific language governing permissions and
rem limitations under the License.

if "%OS%" == "Windows_NT" setlocal
rem ---------------------------------------------------------------------------
rem Start script for the CATALINA Server
rem
rem $Id: startup.bat 895392 2010-01-03 14:02:31Z kkolinko $
rem ---------------------------------------------------------------------------

rem Guess CATALINA_HOME if not defined
set "CURRENT_DIR=%cd%"
if not "%CATALINA_HOME%" == "" goto gotHome
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
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=
:setArgs
if ""%1""=="""" goto doneSetArgs
set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1
shift
goto setArgs
:doneSetArgs

call "%EXECUTABLE%" start %CMD_LINE_ARGS%

:end

你可能感兴趣的:(tomcat中的startup.bat研究记录)