使用shell自動部署tomcat專案
阿新 • • 發佈:2019-01-07
由於測試伺服器經常需要更新,覺得太麻煩就寫了個shell指令碼,記錄下來僅供大家參考
#!/bin/bash #------自動部署多個tomcat專案指令碼------ #1.刪除部署目錄下已存在的專案 #2.解壓war包到對應目錄下 #3.重新啟動tomcat伺服器 #-------------------------------------- home_dir=/home/t0mcat #tomcat目錄 soa_tomcat_path=/opt/software/apache-tomcat-7.0.64_SOA #部署目錄 soa_deployment_path=/opt/software/web/dev/yiweinet-soa #war包名稱 soa_war=business-soa.war mer_tomcat_path=/opt/software/apache-tomcat-7.0.64_MERCHANT mer_deployment_path=/opt/software/web/dev/business-merchant mer_war=business-merchant.war #get war and return path findAllWar(){ cd $home_dir v_war_file_list=$(find -name "*.war") echo "war list:" ls $v_war_file_list } process(){ for i in $(findAllWar) do v_file_path=$i #echo $v_file_path v_file_name=${v_file_path##*/} echo $v_file_name if [ $v_file_name = $soa_war ] then operTomcat $soa_war $soa_deployment_path $soa_tomcat_path fi if [ $v_file_name = $mer_war ] then operTomcat $mer_war $mer_deployment_path $mer_tomcat_path fi done } operTomcat() { stopTomcat $3 #get first param length v_file_length=${#1} #get file name(1 is first param) v_file_name=${1:0:$[ $v_file_length - 4 ]} #del and move war cd $2 rm -rf $v_file_name* jar xvf ${home_dir}/$1 startTomcat $3 } stopTomcat() { cd $1"/bin" ./shutdown.sh #rm -rf $1"/logs/"* echo "$1 shutdown over" } startTomcat() { cd $1"/bin" ./startup.sh echo "$1 start over" } echo "start" process echo "end"