天天看点

巧用脚本发布静态资源

跳板机上的发布脚本:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<code>$ </code><code>cat</code> <code>copy_h5mall.sh </code>

<code>#!/bin/sh</code>

<code>#只做SAAS  copy h5 mall</code>

<code>nginx_static_ip=10.10.80.22</code>

<code>time_stamp=`</code><code>date</code> <code>+</code><code>"%Y-%m-%d-%H-%M-%S"</code><code>`</code>

<code>h5_mall_zip_name=$1</code>

<code>war_md5=`md5sum ..</code><code>/static/</code><code>${h5_mall_zip_name} | </code><code>awk</code> <code>'{print $1}'</code><code>`</code>

<code>md5_file=`</code><code>cat</code> <code>..</code><code>/static/</code><code>${h5_mall_zip_name}.md5 | </code><code>awk</code> <code>'{print $1}'</code><code>`</code>

<code>if</code> <code>[ </code><code>"${war_md5}"</code> <code>= </code><code>"${md5_file}"</code> <code>];</code><code>then</code>

<code>    </code><code>ssh</code> <code>${nginx_static_ip} </code><code>"cp -r /data/static/all/h5_mall /data/static/all/h5_mall-${time_stamp}"</code>

<code>    </code><code>ssh</code> <code>${nginx_static_ip} </code><code>"cd /data/static/all/h5_mall &amp;&amp; /bin/rm -rf *"</code>

<code>    </code><code>scp</code> <code>..</code><code>/static/</code><code>${h5_mall_zip_name} ${nginx_static_ip}:</code><code>/data/static/all/h5_mall/</code>

<code>    </code><code>ssh</code> <code>${nginx_static_ip} </code><code>"cd /data/static/all/h5_mall &amp;&amp; unzip ${h5_mall_zip_name}"</code>

<code>fi</code>

<code>ip_list=`</code><code>cat</code> <code>..</code><code>/env</code><code>.sh | </code><code>grep</code> <code>"frontier-cms-web"</code> <code>| </code><code>cut</code> <code>-d </code><code>"="</code> <code>-f1 | </code><code>cut</code> <code>-d </code><code>"#"</code> <code>-f2 | </code><code>uniq</code><code>`</code>

<code>scp</code> <code>..</code><code>/static/</code><code>${h5_mall_zip_name} ${ip_list}:</code><code>/tmp</code>

<code>sleep</code> <code>5;</code>

<code>#调用frontier-cms-web 服务器上的另一个脚本</code>

<code>ssh</code> <code>${ip_list} </code><code>"cd /data/static &amp;&amp; sh deploy_h5_mall.sh ${h5_mall_zip_name}"</code>

#脚本拆开运行,frontier-cms-web 服务器地址:

<code>$ </code><code>cat</code> <code>..</code><code>/env</code><code>.sh | </code><code>grep</code> <code>"frontier-cms-web"</code> <code>| </code><code>cut</code> <code>-d </code><code>"="</code> <code>-f1 | </code><code>cut</code> <code>-d </code><code>"#"</code> <code>-f2 | </code><code>uniq</code>

<code>10.10.80.16</code>

#frontier-cms-web服务器上的静态资源目录每个conmand Id目录都需要发布:

<code>[vm10-10-80-16 static]$ </code><code>ls</code>

<code>1  1002  1003  1006  1007  1008  11009  11010  11011  6  deploy_h5_mall.sh  deploy_pc_mall.sh</code>

<code>[ody@vm10-10-80-16 static]$ </code><code>ls</code> <code>1002 1003</code>

<code>1002:</code>

<code>h5_mall      h5_mall1108  h5_mall12071548  h5_mall.bak  pc_mall1110  pc_mall1116  pc_mall12062009  pc_mall12211923</code>

<code>h5_mall1107  h5_mall1207  h5_mall1221      pc_mall      pc_mall1115  pc_mall1130  pc_mall1207</code>

<code>1003:</code>

<code>h5_mall      h5_mall1108      h5_mall1207  pc_mall      pc_mall1130  pc_mall1207</code>

<code>h5_mall1107  h5_mall11301833  h5_mall1221  pc_mall1110  pc_mall1206  pc_mall12211923</code>

#frontier-cms-web 服务器上之前写的一个的发布脚本,不够自动化还需要登录这台机器运行:

<code>[vm10-10-80-16 static]$ </code><code>cat</code> <code>deploy_h5_mall.sh </code>

<code>war=$1</code>

<code>Time=`</code><code>date</code> <code>"+%Y-%m-%d-%H-%M"</code><code>`</code>

<code>for</code> <code>dir</code> <code>in</code> <code>`</code><code>ls</code> <code>/data/static</code> <code>| </code><code>egrep</code> <code>-</code><code>v</code> <code>deploy_</code><code>"(pc|h5)"</code><code>_mall.sh`;</code><code>do</code>

<code>    </code><code>echo</code> <code>${</code><code>dir</code><code>}</code>

<code>    </code><code>cd</code> <code>/data/static/</code><code>${</code><code>dir</code><code>} &amp;&amp; </code><code>cp</code> <code>-r h5_mall h5_mall_</code><code>"${Time}"</code>

<code>    </code><code>cd</code> <code>/data/static/</code><code>${</code><code>dir</code><code>}</code><code>/h5_mall/</code> <code>&amp;&amp; </code><code>rm</code> <code>-rf *</code>

<code>    </code><code>cp</code> <code>/tmp/</code><code>${war} </code><code>/data/static/</code><code>${</code><code>dir</code><code>}</code><code>/h5_mall/</code>

<code>    </code><code>cd</code> <code>/data/static/</code><code>${</code><code>dir</code><code>}</code><code>/h5_mall</code> <code>&amp;&amp; unzip </code><code>"${war}"</code>

<code>done</code>

本文转自青衫解衣 51CTO博客,原文链接:http://blog.51cto.com/215687833/1900877