由于web伺服器上的代碼更新速度非常快,是以備份復原變的非常重要,在源伺服器在代碼更新之前要做好備份
<code>#!/bin/bash</code>
<code>TODAY=`</code><code>date</code> <code>+</code><code>'%Y%m%d%H%M%S'</code><code>`</code>
<code>BACKUP_DIR=</code><code>/home/path_to_file/publish/FILENAMEback</code>
<code>FILE_DIR=</code><code>/PATH/TO/FILE</code>
<code>find</code> <code>$FILE_DIR/ -</code><code>type</code> <code>f > </code><code>/home/publish_file</code><code>.list</code>
<code>sed</code> <code>-i </code><code>'s/\/PATH\/TO\/FILE\>//g'</code> <code>/home/pubilsh_file</code><code>.list</code>
<code> </code><code>if</code> <code>[ ! -d $BACKUP_DIR$TODAY ]; </code><code>then</code>
<code> </code><code>mkdir</code> <code>-p $BACKUP_DIR$TODAY</code>
<code> </code><code>fi</code>
<code> </code><code>for</code> <code>s </code><code>in</code> <code>$(</code><code>cat</code> <code>/home/publish_file</code><code>.list)</code>
<code> </code><code>do</code>
<code> </code><code>if</code> <code>[ ! -d $BACKUP_DIR$TODAY${s%/*} ];</code><code>then</code>
<code> </code><code>mkdir</code> <code>-p $BACKUP_DIR$TODAY${s%/*}</code>
<code> </code><code>fi</code>
<code> </code><code>done</code>
<code> </code><code>/bin/cp</code> <code>-fr </code><code>/var/www/html</code><code>$s $BACKUP_DIR$TODAY$s</code>
<code>find</code> <code>$BACKUP_DIR$TODAY -</code><code>type</code> <code>f</code>
<code> </code><code>if</code> <code>[ $? = 0 ];</code><code>then</code>
<code> </code><code>/bin/cp</code> <code>-fr $FILE_DIR</code><code>/projectname</code> <code>/var/www/html/projectname</code>
<code> </code><code>rm</code> <code>-rf $FILE_DIR/*</code>
<code> </code>
<code></code>
本文轉自wks9751CTO部落格,原文連結:http://blog.51cto.com/wks97/1615069 ,如需轉載請自行聯系原作者