****************************************************************************************************************tomcat
@echo off & setlocal ENABLEDELAYEDEXPANSION
net use x: \\19*.1**.**.***\testing 123456 /user:administratormaven
xcopy x:\*.* D:\123 /e /c /q /h /r /y
net use x: /delete单元测试
****************************************************************************************************************测试
::@echo off表示执行了这条命令后关闭全部命令(包括自己这条命令)的回显。而echo ::off命令则表示关闭其余全部命令(不包括自己这条命令)的回显,@的做用就是关闭紧跟其后的一条命令的回显,
::关于上述例子应该表现的很清楚了,不过还有几点须要解释一下:
::pause也是一条命令,做用就是使程序暂停,也就是输出“请按任意键继续…”的缘由。
::@echo off执行之后,后面全部的命令均不显示,包括本条命令。
::echo off执行之后,后面全部的命令均不显示,但本条命令是显示的。ui
::setlocal enabledelayedexpansion
::设置本地为延迟扩展。其实也就是:延迟变量,全称"延迟环境变量扩展",
::什么是扩展?
::若是咱们要在咱们的命令中引用一些变量,那么咱们如何让CMD在解释咱们的命令时,能识别出这个变量呢?
::这时咱们就能够在变量名字两边加一个%号,如%name%.当CMD在对读取咱们的整行
::命令进行格式匹配的时候,就会发现name这个字符两边加了%号,就不会把他看成普通字符处理,
::而是会把他看成一个变量处理,变量名叫name!而后CMD就会找到变量名对应的值,用变量名的值替换掉这个变量
::名字(name),(若是变量名不存在 值,就返回空值).再将这个替换好而且匹配的命令执行!这个替换值的过程,
::就叫作变量扩展,说白了就是把变量的名字,用他的值给替换掉后执行!也就是批处 理如何识别一个变量的过程.
::什么是环境变量扩展?
::例如这个一个BAT
::set var=test
::echo %var%
:: CMD在读取到echo %var%这句命令后,就会进行匹配操做,它立刻就发现var字符两边有%号,这时他就会
:: 把他看成一个变量处理,查看这个var变量名是否是有值,若是有 就用他的值把变量名var给替换掉,
:: 这里咱们的VAR在上一条命令set var=test中,给var赋值为test,因此他会用test把%var%这个变量名
:: 替换掉,替换后的结果就为echo test了.这些步骤都是CMD进行匹配操做的步骤,匹配完后,他再执行
:: echo test这条语句,这时咱们的CMD中就会echo出一个test了.
::什么是延迟环境变量扩展?
::https://blog.csdn.net/kolamemo/article/details/18036021spa
::net use z: \\IP\baby
::此命令将共享名为baby的共享资源映射到z盘.net
****************************************************************************************************************blog
@echo offip
title 产品打包[%DATE% %TIME%]
color 02资源
set "path=D:\work\war\workspace_build\Subversion_bin;D:\work\maven\bin;%path%"
echo 是否更新代码:
echo 一、更新代码再打包
echo 二、不更新代码打包
rem echo 三、发布程序
echo 0、退出
set /p start_service_no=请输入:
if "%start_service_no%" == "1" goto :no1
if "%start_service_no%" == "2" goto :no2
if "%start_service_no%" == "3" goto :no3
if "%start_service_no%" == "0" goto :quit
:no1
echo 开始获取最新代码文件……
D:
cd D:\work\war\workspace_build\build_haha
:no2
REM 所有的Package一次生成:
D:
cd D:\work\war\workspace_build
echo 开始打包……
rem mvn clean package -X -Dmaven.test.skip=true > 123_bench.log
mvn clean install package -Dmaven.test.skip=true > 123_bench.log
echo 结束打包……
:no3
rem c:
rem cd D:\work\war\workspace_build
rem echo 开始发布……
rem mvn tomcat:redeploy -Dmaven.test.skip=true > 123_deploy.log
rem echo 结束发布……
:quit
@pause
****************************************************************************************************************
知识点1:
mvn clean package依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7个阶段。
mvn clean install依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8个阶段。
mvn clean deploy依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9个阶段。
由上面的分析可知主要区别以下,
package命令完成了项目编译、单元测试、打包功能,但没有把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库
install命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程maven私服仓库
deploy命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库
-Dmaven.test.skip=true 跳过单元测试
知识点2:
set /a 执行数学计算
set /p 提示用户输入
@echo off
set /p b=输入一个数字:
echo %b%
set /a a=2*%b%
echo %b%+%b%=%a%
pause>nul
知识点3:
尖括号 > 功能是将其前面的命令输出到标准输出设备的文字追加到该符号后面指定的文本文件结尾