从之前的学习中知道,可以调用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=
if %myVar%== echo Correct

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

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

if exist c:\temp\myFile.txt goto start

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

not

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

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

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

if not exist c:\temp\myFile.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 %==start goto start
if %==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 ""%""=="""" echo No parameter

shift 

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

echo off
shift
echo %
echo %

如果在运行批处理文件时,附加了三个参数 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目录下调用该脚本

bin\catalina

在两种情况下 参数 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

  

  

在Windows平台上运行Tomcat的更多相关文章

  1. Windows平台上运行Tomcat

    从之前的学习中知道,可以调用Bootstrap类将Toomcat作为一个独立的应用程序来运行,在Windows平台上,可以调用startup.bat批处理文件来启动Tomcat,或运行shutdown ...

  2. cygwin -- 在windows平台上运行的unix模拟环境

    cygwin是一个在windows平台上运行的unix模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了很多好东西,著名的还有eCos,不过现已被Redhat收购).它对于学 ...

  3. windows平台上运行Flink_转载于CSDN

    Flink安装部署-window 本地部署原创冰上浮云 发布于2019-08-17 15:56:06 阅读数 633 收藏分类专栏: flink版权声明:本文为博主原创文章,遵循 CC 4.0 BY- ...

  4. Cygwin安装篇,windows平台上运行的类UNIX模拟环境

    1.虚拟光驱的安装 虚拟光驱下载 一路下一步,不再阐述,这些广告选项不要选 2.安装文档,双击ISO文档 ISO下载地址 链接:http://pan.baidu.com/s/1miFVCYO 密码:z ...

  5. 【Win 10应用开发】如何知道UAP在哪个平台上运行

    面向22世纪的现代化应用程序可以同时在多种设备上运行,于是有朋友会有一个疑问:有时候,我们还真的需要判断一下,UAP应用程序在哪个平台上运行.尽管大多情况下我们不必要这样做,但某些特殊情况还得考虑.比 ...

  6. 在Windows平台上安装Node.js及NPM模块管理

    1. 下载Node.js官方Windows版程序:http://nodejs.org/#download    从0.6.1开始,Node.js在Windows平台上提供了两种安装方式,一是.MSI安 ...

  7. 在微软平台上运行 SAP 应用程序

     本博客介绍了在微软平台上运行 SAP 应用程序的相关信息,作者在基于微软平台使用 SAP 方面有着数十年经验. 发布关于 Azure 的 SAP 说明 几个月前,SAP 针对适用于 SAP 软件 ...

  8. Windbg是windows平台上强大的调试器

    基础调试命令 - .dump/.dumpcap/.writemem/!runaway Windbg是windows平台上强大的调试器,它相对于其他常见的IDE集成的调试器有几个重要的优势, Windb ...

  9. 分享一些 Windows 平台上的神器

    下面分享一些 Windows 平台上日常开发使用的软件,有些软件我自认为是神器,可以大大提高效率. 编辑器类软件 IntelliJ IDEA IntelliJ IDEA 内部集成 Java 开发环境, ...

随机推荐

  1. PHP环境搭建之单独安装

    还在使用PHP集成环境吗?教你自定义搭建配置PHP开发环境,按照需求进行安装,安装的版本可以自己选择,灵活性更大. 目录:1. 安装Apache2. 安装PHP3. 安装MySQL4. 安装Compo ...

  2. nginx状态码

    200:服务器成功返回网页 403:服务器拒绝请求.404:请求的网页不存在 499:客户端主动断开了连接.500:服务器遇到错误,无法完成请求.502:服务器作为网关或代理,从上游服务器收到无效响应 ...

  3. k8s部署03-----常用运维命令

    kubectl常用命令 kubectl get nodes #查看集群中有多少个node kubectl describe node <node_name> #查看某个node的详细信息 ...

  4. chrome新版本flash无法在http网站上运行的解决办法

    最近遇到一个问题,就是用chrome浏览器打开网站后台以后,使用flash插件上传文件失败,提示flash初始化失败,于是打开chrome的内容设置,准备启用flash功能,打开浏览器,在地址栏中输入 ...

  5. 001-tomcat下载、解压、启动、开机启动

    一.tomcat作用 Tomcat就是Servlet容器 下载解压 下载:找到合适版本下载使用即可 http://tomcat.apache.org/ window 下载zip解压 linux上使用 ...

  6. Django前期知识准备

    一. WEB应用 WEB应用程序是一种可以通过WEB访问的应用程序, 程序的最大好处是用户很容易访问应用程序, 用户只需要有浏览器即可, 不需要再安装其他软件. 应用程序有两种模式: C/S, B/S ...

  7. 数据库文件结构、sqlserver ON [PRIMARY]

    在sqlserver创建表的语句中,最后总来一句on[primary],这到底是什么意思? .联机丛书中CREATE TABLE的语法下似乎没有找到.最后终于发现,具体如下: 在CREATE TABL ...

  8. Es性能优化

    1. Es中10亿级别的数据量,如何提高查询效率 (1) 性能优化关键:file system cache a. 不要期待随手挑一个参数,就可以万能的应对所有性能慢的场景 b. es依赖于底层的fil ...

  9. MSSQL Server 2005 安装补丁出现 Setup Support Files Failure

    给MSSQL Server 2005 安装补丁时出现  Setup Support Files Failure,检查了错误日志,不是系统错误,而是应用错误.出现这个错误的原因:以我的安装为例,我开始装 ...

  10. TLC编程

    NAND Flash可以划分为SLC.MLC和TLC SLC:单阶存储单元,读写速率快,可擦写次数高 MLC和TLC:多阶存储单元,MLC每个存储单元中存储2 bit数据,可以表示四种数据:SLC每个 ...