柳州自卸车液压配件 發表於 2023-12-13 00:00:00

linux实现自动部署tomcat脚本

<p>
        由于经常部署war到tomccat上,经常有一些重复的工作要做:停服务、备份war包、上传新的war包、启动服务。索性就写了一个自动部署的脚本。</p>
<p>
        脚本如下autoDeploy.sh:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_592517">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                        <div class="line number9 index8 alt2">
                                                                9</div>
                                                        <div class="line number10 index9 alt1">
                                                                10</div>
                                                        <div class="line number11 index10 alt2">
                                                                11</div>
                                                        <div class="line number12 index11 alt1">
                                                                12</div>
                                                        <div class="line number13 index12 alt2">
                                                                13</div>
                                                        <div class="line number14 index13 alt1">
                                                                14</div>
                                                        <div class="line number15 index14 alt2">
                                                                15</div>
                                                        <div class="line number16 index15 alt1">
                                                                16</div>
                                                        <div class="line number17 index16 alt2">
                                                                17</div>
                                                        <div class="line number18 index17 alt1">
                                                                18</div>
                                                        <div class="line number19 index18 alt2">
                                                                19</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash preprocessor bold">#! /bin/sh</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash functions">echo</code> <code class="bash string">'####################开始自动部署####################'</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">path=`</code><code class="bash functions">pwd</code><code class="bash plain">` </code><code class="bash comments">#当前路径</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash plain">tomcatPath=tomcat-7 </code><code class="bash comments">#指定tomcat文件目录名称</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="bash functions">cd</code> <code class="bash plain">../$tomcatPath</code><code class="bash plain">/bin</code> <code class="bash comments">#进入tomcat的bin目录</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="bash plain">PID=$(</code><code class="bash functions">ps</code> <code class="bash plain">-fu `</code><code class="bash functions">whoami</code><code class="bash plain">`|</code><code class="bash functions">grep</code> <code class="bash plain">tomcat|</code><code class="bash functions">grep</code> <code class="bash plain">-</code><code class="bash functions">v</code> <code class="bash functions">grep</code><code class="bash plain">|</code><code class="bash functions">awk</code> <code class="bash string">'{print $2}'</code><code class="bash plain">)</code>
</div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="bash keyword">if</code> <code class="bash plain">[ -z </code><code class="bash string">"$PID"</code> <code class="bash plain">];</code><code class="bash keyword">then</code>
</div>
                                                                <div class="line number8 index7 alt1">
                                                                        <code class="bash spaces"> </code><code class="bash functions">echo</code> <code class="bash string">"no tomcat process"</code>
</div>
                                                                <div class="line number9 index8 alt2">
                                                                        <code class="bash keyword">else</code>
</div>
                                                                <div class="line number10 index9 alt1">
                                                                        <code class="bash plain">.</code><code class="bash plain">/shutdown</code><code class="bash plain">.sh </code><code class="bash comments">#停止tomcat服务</code>
</div>
                                                                <div class="line number11 index10 alt2">
                                                                        <code class="bash keyword">fi</code>
</div>
                                                                <div class="line number12 index11 alt1">
                                                                        <code class="bash functions">sleep</code> <code class="bash plain">1 </code><code class="bash comments">#休眠1s</code>
</div>
                                                                <div class="line number13 index12 alt2">
                                                                        <code class="bash functions">cd</code> <code class="bash plain">..</code><code class="bash plain">/webapps</code> <code class="bash comments">#进入tomcat的webapps目录</code>
</div>
                                                                <div class="line number14 index13 alt1">
                                                                        <code class="bash functions">rm</code> <code class="bash plain">-fr </code><code class="bash functions">test</code> <code class="bash comments">#删除test文件目录</code>
</div>
                                                                <div class="line number15 index14 alt2">
                                                                        <code class="bash functions">mv</code> <code class="bash functions">test</code><code class="bash plain">.war </code><code class="bash functions">test</code><code class="bash plain">.war.$(</code><code class="bash functions">date</code> <code class="bash plain">+%Y%m%d) </code><code class="bash comments">#备份webapps下的test16 cp $path/test.war ./ #复制test.war到webapps路径下</code>
</div>
                                                                <div class="line number16 index15 alt1">
                                                                        <code class="bash functions">sleep</code> <code class="bash plain">1 </code><code class="bash comments">#休眠1s</code>
</div>
                                                                <div class="line number17 index16 alt2">
                                                                        <code class="bash functions">cd</code> <code class="bash plain">..</code><code class="bash plain">/bin</code>
</div>
                                                                <div class="line number18 index17 alt1">
                                                                        <code class="bash plain">.</code><code class="bash plain">/startup</code><code class="bash plain">.sh </code><code class="bash comments">#启动tomcat服务</code>
</div>
                                                                <div class="line number19 index18 alt2">
                                                                        <code class="bash functions">echo</code> <code class="bash string">'####################部署结束####################'</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>说明:</strong></p>
<p>
        1.新建一个目录autoDeploy与tomcat目录放在同级目录下</p>
<p>
          (1)autoDeploy.sh放在autoDeploy目录下</p>
<p>
          (2)需要部署的test.war放在autoDeploy目录下(test.war为需要部署的到tomcat上的war包)</p>
<p>
        2.tomcatPath=tomcat-7(指定tomcat文件目录名称,tomcat-7改为自己tomcat的目录名称)</p>
<p>
        3.执行autoDepoy.sh即可实现自动部署</p>
<p>
          新建的autoDepoy.sh若没有执行权限,需要执行:chmod +x autoDeploy.sh</p>
<p>
        以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。</p>
頁: [1]
查看完整版本: linux实现自动部署tomcat脚本