• 在Windows平台上运行Tomcat


      从之前的学习中知道,可以调用Bootstrap类将Toomcat作为一个独立的应用程序来运行,在Windows平台上,可以调用startup.bat批处理文件来启动Tomcat,或运行shutdown.bat批处理文件来关闭Tomcat,这两个批处理文件位于%CATALINA_HOME%/bin目录下,下面将会对批处理脚本进行介绍,如果你对DOS命令不太熟悉,那么你需要认真阅读下面的,如何编写批处理文件这个段落,

    如何编写批处理文件

      下面将会对批处理文件进行介绍,这样你才能理解用来启动或者关闭Tomcat的批处理文件,会对 rem、if、 echo、goto、lable等命令进行介绍,当然,介绍的内容并不能涵盖所欲偶的内容,

      首先批处理文件的后缀名必须为 .bat,可以从Windows Explorer 中双击一个批处理文件,也可以在DOS控制台中键入批处理文件的名字来调用它,调用批处理文件后,文件中的每一行命令都会被解释,下面将会对Tomcat的批处理文件命令进行介绍。

      注意:DOS命令及环境变量是区分大小写的,

      rem命令:该命令用于注释,解释器不会执行以rem命令开始的行

      pause:pause命令用于暂停正在执行的批处理文件,并提示用户按某个键,然后程序会继续执行。

      echo:该命令用于在DOS控制台上显示一段文件,例如,下面的命令将在控制台上输出 Hello Word,然后暂停程序,之所以暂停程序是为了能够使控制台将输出的文本显示出来:  

    echo Hello Word
    pause

      如果想要显示环境变量的值,需要在环境变量值的前后添加%,例如,下面的命令将输出 变量 myVar的值

    echo %myVar%

      如果想要输出操作系统的名字,可以使用如下命令

    echo %OS%

      echo off(

     #从下一行开始关闭回显

      使用 echo off 可以防止将批处理文件中的具体命令输出,而只会输出执行结果,但是 echo off 命令本身还是会显示出来,如果你想将 echo off 也隐藏起来,需要使用 @echo off 命令。

      @echo off 从本行开始关闭回显

      该命令与 echo off 命令相似,但是它会链 echo off 命令 也隐藏起来

      set 

      set命令用来设置用户定义或命名的环境变量,在批处理文件中设置的环境变量是临时存储在内存中的,在批处理文件执行完成后就会销毁

      例如:下面的set命令 创建了一个名为 THE_KING的环境变量,将其值设置 为 Elvis ,并输出到控制台上

    set THE_KING=Elvis
    echo %THE_KING%
    pause

      label

      使用冒号设置一个标签,然后可以将该标签传递给goto命令,这样程序就会跳转到标签指定的位置,下面的语句定义了一个名为 end 的标签

    :end

    有关于标签的更多例子请参见 对 goto 命令的介绍

      goto

      goto命令强制批处理文件跳转到指定标签所在的位置继续执行,示例如下:

    echo Start
    goto end
    echo I Can guarantee this line will not be executed
    :end
    echo End
    pause

    在第一行输出了 Start 之后,批处理文件会执行goto 命令,跳转到 end 标签后的语句继续执行,结果是 跳过了第三行内容,没有执行它

     if

       if用来执行条件测试,有下面三种用法

    1. 测试变量的值
    2. 测试文件是否存在
    3. 测试错误值

    使用下面的命令格式 来测试一个变量的值

    if variable==value 

    例如,下面的if语句将会测试变量myVar的值 是不是 3 ,如果是,则它在控制台输出 Correct

    set myVar=3
    if  %myVar%==3 echo Correct

    运行上面的命令时,会对变量myVar的值进行判断,并输出 Correct

    可以使用下面的命令格式 来测试文件是否存在

    if exist c:	empmyFile.txt goto start

    如果 在 c: emp目录下存在myFile.txt文件,程序就会跳转 start标签所在的位置继续执行,也可以使用 not关键字来对一条 语句取反

    not

    not关键字用来对一条语句取反,例如,下面的命令在变量 myVar的值不是3时 输出 Correct

    set myVar=3
    if not %myVae%==3 echo Correct
    pause

    当 c: emp目录下 不存在 myFile.txt文件时,下面的命令会跳转到标签end所在的位置继续执行。

    if not exist c:	empmyFile.txt goto end

    exist

      当测试文件是否存在时,会使用到 if 语句 和 exist命令,示例程序请参见  if 命令的例子

    接收参数

      可以给批处理文件传递参数,并使用 %1 来引用第一个参数, %2 引用第二个参数,依次类推,例如:下面的命令将在控制台输出第一个参数

      

    echo %1
    

      如果批处理文件的名字是test.bat,并使用 test Hello 命令来调用它 ,那么将会在控制台输出 Hello

    下面的批处理文件会对第一个参数的值进行检查,如果第一个参数是 start ,它就会输出 Starting application ,如果第一个参数是 stop,就输出 Stopping application ,否则 输出 Invalid parameter

    echo off
    if %1==start  goto start 
    if %1==stop  goto stop
    goto invalid
    :start 
    echo Starting application
    goto end
    :stop
    echo Stopping application
    goto end
    :invalid
    echo Invalid parameter
    goto end
    :end

    如果检查运行批处理文件 是否带有参数时,可以将 %1 与空字符串比较,例如 对于下面的批处理文件,如果运行时没有使用参数,就会在控制台输出 No parameter

    if "1%"=="" echo No parameter

    或者

    if ""%1""=="""" echo No parameter

     shift 

    shift 命令用来将 全体参数向后移动一位,将%2的值 赋值给了1%,将%3的值赋值给%2,依次类推,例如下面的代码使用了一条shift命令

    echo off
    shift
    echo %1
    echo %2

    如果在运行批处理文件时,附加了三个参数 a、b、c,那么上面的命令会有如下输出

    b

    c

    移动之后,要使用%0 来 引用第一个参数,而现在最后一个参数则失效了。

    call

    call命令用来调用另外一条命令。

    批处理中调用另外一个批处理的命令,否则剩下的批处理指令将不会被执行
    有时有的应用程序用start调用出错的,也可以call调用

    setLocal

    在批处理文件中使用setLocal对环境变量的修改只在当前批处理脚本中有效,当遇到endLocal命令后,在setLocal之后设置的环境变量恢复到使用SETLOCAL语句以前的状态。

    start

    打开一个新的Windows控制台,并可以为这个新的控制台指定一个名字,例如:

    start  "Title"

    此外,在Titile 后面,还有传入一条将要在新的控制台中执行的命令

    例如 :在新的Windows控制台中 输出 this is new Title

    start "Title" echo this is New Title

    那么上面大致介绍了 批量处理文件的一些 DOS 命令,下面就进入我们要了解的重点:Tomcat 的启动批处理文件

    catalina.bat批处理文件

      catalina.bat批处理文件用来启动或者关闭Tomat,另外两个文件(startup.bat 和 shutdown.bat)提供了更简单的启动和关闭Tomcat的方法,实际上,startup.bat 和 shutdowm.bat都会调用catalian.bat并传入相应的参数,

    在%CATALINA_HOME%/bin目录下,需要以下面的语法格式调用catalina.bat 脚本

    catalina

    或者使用下面的语法从%CATALINA_HOME%/bin目录下调用该脚本

    bincatalina

    在两种情况下 参数 command 的可选值包括:

    • debug 在调试器中启动 Catalina
    • debug -security 在使用安全管理器的情况下调试Catalina
    • embedded 以嵌入模式启动Catalina
    • jpda start 在JPDA调试器下启动Catalina
    • run 在当前窗口中启动 Catalina
    • run -security 在当前窗口中,通过安全管理器启动Catalina
    • start 在新窗口启动Catalina
    • start -security 在新窗口通过安全管理器启动Catalina
    • stop 关闭Catalina

    例如 要想在新窗口启动Catalina,可以使用如下命令

    catalina start

      

      

  • 相关阅读:
    13.解决SUSELinux用户登录Module is unknow问题
    12.解决SUSE Linux无法使用SSH登录的问题
    11.SUSE Linux服务器系统网卡配置重启问题
    02.Windows2012R2安装360安全卫士失败及无法卸载问题
    01.Windows2008R2系统禁启SMBv1服务命令
    07.SUSE Linux 系统本地yum源配置
    06.Linux-RedHat系统本地yum源配置
    05.Linux-CentOS系统本地Yum源搭建
    04.Linux-CentOS系统sudo权限配置
    03.LinuxCentOS系统root目录LVM磁盘扩容
  • 原文地址:https://www.cnblogs.com/ChenD/p/10193180.html
Copyright © 2020-2023  润新知