bat(批处理)命令(tomcat 7.0.75 startup.bat 命令集)

本文主要介绍tomcat 7.0.75中startup.bat(位置:tomcat目录\bin)中涉及到的bat命令,为tomcat源码研究做准备。

startup.bat中涉及到的bat命令如下:

  一. echo

echo 命令:显示消息,或者启用或关闭命令回显

echo 命令格式:

  1.echo [on|off]

  2.echo [message]

测试代码如下:

1 d:
2 cls
3 echo on
4 echo This is test
5 echo off
6 echo This is test
7 pause

  效果如下:

  

  小结:

  经测试发现echo 主要有2大功能:

  1. 显示消息
  2. 打开或关闭命令回显

* 命令回显:如上图,当脚本运行至第一个echo This is test 时,已经运行了echo on,所以此时命令回显是打开的,故而在cmd中显示该命令(echo This is test)。继续运行脚本至第二个This is test时,运行了echo off,命令回显关闭,所以在cmd只会显示命令(echo This is test)的结果(在cmd显示This is test),而不会显示该命令。

二. @

@命令:运行时不回显命令

测试代码如下:

1 d:
2 cls
3 echo This is test
4 @echo This is test
5 pause
6 @pause

  效果如下:

  

  小结:

  经测试发现,当命令(@echo This is test)运行时,不回显命令(即不在cmd中显示命令‘echo This is test‘,可对照命令‘echo This is test‘)。其效果如echo off 一样,2者区别在于执行echo off后,其后的代码均不会回显命令,除非有像echo on这样打开命令回显的命令执行。而执行@+某条命令只会使该命令不回显,而不影响其他命令是否回显。同样在执行pause和@pause时,带@的pause没有回显命令,不带@的pause回显命令。

  *pause的作用是当脚本执行至此命令时,不执行之后的命令并暂停,仅当按任意键后继续运行。

  三. rem

  rem 命令:在批处理文件里增加注释或说明

  rem 命令格式:rem [comment]

  测试代码如下:

1 d:
2 cls
3 rem echo this is rem
4 echo this is rem
5 pause

  效果如下:

  

  小结:

  经测试发现,rem 命令没有产生任何可见的结果,据官方解释rem命令功能为“在批处理文件或***里加上注释或说明。”。

  四.set

  set 命令:显示、设置或删除 cmd.exe 环境变量

  set 命令格式:set [variable=[string]]

  测试代码如下:

1 d:
2 cls
3 set var=1
4 set var1=2
5 echo %var%,%var1%
6 pause

  效果如下:

  

  小结:

  经测试发现,set 命令可以设置环境变量并赋值,用echo 命令可以显示变量值。

  *1.echo 命令显示变量值的格式为 echo %变量名称%,例如显示名称为var变量的值,使用echo %var%。

  *2.若变量赋值时内容有空格,使用set "变量赋值表达式"的方法完整赋值内容。

  五.setlocal

  setlocal 命令:开始批处理文件中环境改动的本地化操作。在执行 SETLOCAL 之后所做的环境改动只限于批处理文件。要还原原先的设置,必须执行 ENDLOCAL。达到批处理文件结尾时,对于该批处理文件的每个尚未执行的 SETLOCAL 命令,都会有一个隐含的 ENDLOCAL 被执行。

  个人理解setlocal和endlocal命令为变量的局部化,在setlocal至endlocal命令之间为此区域变量的作用范围。对变量做任何操作皆不会影响其他区域的变量。

  测试代码如下:

 1 d:
 2 cls
 3 set var=1
 4 echo %var%
 5 setlocal
 6 set var=2
 7 echo %var%
 8 endlocal
 9 echo %var%
10 pause

  效果如下:

  

  小结:

  经测试发现,在setlocal和endlocal之间的区域对变量的值做修改并不会影响其他区域相同变量的值。

  六.if

  if 命令:执行批处理程序中的条件处理

  if 命令格式:

    1. if [not] string1==string2 command

    2.if [not] exist filename command

  测试代码如下:

 1 d:
 2 cls
 3 if 1==1 echo equ
 4 if not exist D:\qwertyuiop echo not exist
 5 set "var=1"
 6 set "var1=2"
 7 set "var3=D:\qwertyuiop"
 8 if not %var%==%var1% echo not equ
 9 if not exist %var3% echo not exist dir
10 pause

  效果如下:

  

  小结:

  经测试发现,if 命令可判断2个字符串或变量的值是否相等并且判断文件或目录是否存在

  七.goto

  goto 命令:将 cmd.exe 定向到批处理程序中带标签的行。

  goto 命令格式:goto lable

  测试代码如下:

 1 d:
 2 cls
 3 :start
 4 echo start
 5 goto lab
 6 :end
 7 echo end
 8 pause
 9 :lab
10 echo lab
11 goto end

  效果如下:

  

  小结:

  经测试发现,执行goto 命令后转至相应的指令行去执行。

  八.cd

  cd 命令:显示当前目录名或改变当前目录。

  cd 命令格式:

    1.cd [/d] [drive:][path]

    2.cd [..]

  测试代码如下:

1 d:
2 cls
3 cd d:\0
4 cd..
5 pause

  效果如下:

  

  小结:

  经测试发现,cd [drive:][path] 格式的cd命令进入指定目录,cd [..] 格式的命令返回上一层目录。

  九.call

  call 命令:从批处理程序调用另一个批处理程序。

  call 命令格式:call [drive:][path]filename [batch-parameters]

  测试代码如下:

1 rem main file
2 d:
3 cls
4 call d:\test.bat
5 pause
6 rem 需要自己在d盘创建test.bat,并写入如下信息。
7 rem test.bat
8 echo this is test.bat
9 pause

  效果如下:

  

  小结:

  经测试发现,call  命令可调用其他bat文件并执行。

  十.shift

  shift 命令:更改批处理文件中可替换参数的位置。

  shift 命令格式:shift [/n]

  测试代码如下:

 1 d:
 2 cls
 3 call :f 1 2 3
 4 goto end
 5 :f
 6 echo %1,%2,%3
 7 shift
 8 echo %1,%2,%3
 9 goto:eof
10 :end
11 pause

  效果如下:

  

  小结:

  经测试发现,shift命令将第2和第3个参数同时向左移位1。

  *以上命令介绍并不全面,只是简单介绍startup.bat文件中所用到的功能。

  版权声明:本文原创发表于 博客园,作者为 微小处存bug 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。

  感谢您的阅读,若您觉得本文对您有所帮助,请点击右下角的推荐按钮。

  若您想支持作者,详见下方二维码:

     

原文地址:https://www.cnblogs.com/open-technology/p/7885878.html

时间: 2024-12-17 03:07:10

bat(批处理)命令(tomcat 7.0.75 startup.bat 命令集)的相关文章

BAT批处理之文件与文件夹(附xcopy命令详解)

在批处理脚本中,操作文件与文件夹的方法,包括文件的复制.删除.移动等操作,并附有xcopy命令的详细用法.原文地址:http://www.jbxue.com/article/14535.html 批处理中的文件.文件夹操作,xcopy命令的用法. 一,建bat文件自动执行复制,删除命令.例1:复制cd.dll文件至windows\system32的bat文件内容:copy cd.dll %windir%\system32例2:卸载windows\system32目录中的cd.dll,即把上面复制

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败解决方案

即上篇通过将web项目打成war包部署到Tomcat服务器,解决mysql问题后,又出现了新问题,真是一波三折,所以将解决过程分享给大家,希望能帮助到小伙伴们~ 将打好的war包拷贝到Tomcat的webapps目录,然后在Tomcat的bin目录找到startup.bat批处理文件,直接双击执行,结果运行几秒后直接闪退,顿时有种不好的预感,在浏览器访问web项目,结果连localhost:8080都无法访问,web项目未发布成功,一脸懵逼~ 没有日志看不到为啥发布不成功额,想了想,可以稍微修改

windows系统bat方式启动tomcat出现java.lang.OutOfmemoryError:PermGen Space 错误

1.问题情景: 在部署项目时,将两个应用部署到同一个tomcat下,通过startup.bat启动服务时,控制台出现出现java.lang.OutOfmemoryError:PermGen Space 错误服务器环境:    系统版本:windows server 2008 r2    安装内存:64GB    处理器:8核(具体型号记不得了) 2.解决方法: PermGen Space:全称是Permanent Generation Space,是指内存的永久保存区域,这块内存主要是被JVM存

Tomcat无法正常启动start.bat 一闪而过、只显示USING 故障排除

在云主机上配置tomcat的时候遇到的问题. 1. 开始的时候我将自己用的tomcat6绿色版打包放到了主机上,当我打开bin下面的时候startup.bat时,控制台一闪而过,查看log文件没有任何记录,打开CMD 找到tomcat的bin目录 >startup.bat ,显示需要JRE_HOME或者JAVA_HOME,原来没有安装JVM. 解决方法:下载一个JRE1.6,安装配置环境变量,再运行startup.bat. 2. 配置JRE后运行startup.bat时,显示5行Using XX

tomcat启动批处理——startup.bat

从文件命名上看就知道这是一个启动批处理.这个批处理的主要功能就是为了找到还有一个批处理catalina.bat,而且运行catalina.bat.一開始就用if "%OS%" == "Windows_NT" setlocal 推断系统是否为Windows_NT.假设是的话则使用setlocal命令,此命令表示之后全部对环境变量的改变仅仅限于该批处理文件.要还原原先的设置能够运行endlocal.如未显式运行,则会在批处理的最后自己主动隐性运行endlocal命令.

tomcat startup.bat 启动脚本(转)

startup.bat文件的主要作用就是找到catali.bat文件,并且执行它. @echo off rem ----------------------------------------------------------------------------------------------------------------------- /* dos在运行批处理时,会依次执行批处理中的每条命令,并且会显示在显示器上,如果你不想让他们显示,可以加一个echo off.当然echo of

tomcat 点击startup.bat一闪而过

出现这样的情况有可能是因为java_home没有设置,tomcat启动需要使用到jre环境,这样的话,就会一闪而过 我们可以使用dos命令来调试错误,进入tomcat的bin目录下,startup.bat回车 下边的是转的 tomcat在启动时,会读取环境变量的信息,需要一个CATALINA_HOME 与JAVA_HOME的信息,CATALINA_HOME即tomcat的主目录,JAVA_HOME即java安装的主目录,jdk的主目录.首先,要在环境变量处,配置JAVA_HOME,注意变量值是j

windows系统下tomcat启动startup.bat一闪而过

遇到运行startup.bat后,一个窗口一闪而过的问题 tomcat在启动时,会读取环境变量的信息,需要一个CATALINA_HOME 与JAVA_HOME的信息,CATALINA_HOME即tomcat的主目录,JAVA_HOME即java安装的主目录,jdk的主目录.首先,要在环境变量处,配置JAVA_HOME,注意变量值是jdk的主目录,不是bin目录,并且不要加分号 然后,如果这样配置,startup.bat还是一闪而过,可以右键点击startup.bat,编辑,在文本的最后敲上pau

TOMCAT控制台日志(startup.bat)输出到指定文件中

1 .修改startup.bat第42行 call "%EXECUTABLE%" start %CMD_LINE_ARGS% 为 call "%EXECUTABLE%" run %CMD_LINE_ARGS% >> ..\logs\my.txt 然后在此启动tomcat,再次查看catalina.txt,预期的信息果然如约而至! 2. 如果要每次启动的时候重新输入不同的文件,可对上面代码进行修改如下,加上红色部分运行startup.bat会一闪而过: c