<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[刘新修]]></title> 
<link>http://liuxinxiu.com:80/index.php</link> 
<description><![CDATA[刘新修的个人博客 (Liuxinxiu'S Blog)]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[刘新修]]></copyright>
<item>
<link>http://liuxinxiu.com:80/s//</link>
<title><![CDATA[执行SHELL同步代码到预上线和代码回退]]></title> 
<author>刘新修 &lt;admin@yourname.com&gt;</author>
<category><![CDATA[Linux/Unix]]></category>
<pubDate>Wed, 26 Apr 2017 07:00:01 +0000</pubDate> 
<guid>http://liuxinxiu.com:80/s//</guid> 
<description>
<![CDATA[ 
	<div class="codeText"><div class="codeHead">C++代码</div><ol start="1" class="dp-cpp"><li class="alt"><span><span>hostname&nbsp;&nbsp;</span></span></li><li><span><span class="preprocessor">############### 最后一次修改的用户 ####################</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>cd /www/ftp/ysx/xfile/www&nbsp;&nbsp;</span></li><li><span>ls -lh&nbsp;&nbsp;</span></li><li class="alt"><span><span class="preprocessor">############### 最后一次修改的用户 ####################</span><span>&nbsp;&nbsp;</span></span></li><li><span>cat /etc/redhat-release&nbsp;&nbsp;</span></li><li class="alt"><span>df -h&nbsp;&nbsp;</span></li><li><span>rsync -avzut --progress --<span class="keyword">delete</span><span> /www/ftp/ycw/xfile/www/assets liuxinxiu@127.0.0.1::ysx_xfile_www --password-file=/pas/rsync.pas&nbsp;&nbsp;</span></span></li><li class="alt"><span>rsync -avzut --progress /www/ftp/ycw/xfile/www/json/assets.json liuxinxiu@127.0.0.1::ysx_xfile_www --password-file=/pas/rsync.pas&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span>echo http:<span class="comment">//ysx.com/xfile/www/json/assets.json</span><span>&nbsp;&nbsp;</span></span></li><li><span>UNAME=$(cat /www/ftp/ycw/xfile/www/json/assets.json &#124; jq -c .name)&nbsp;&nbsp;</span></li><li class="alt"><span>VERSION=$(cat /www/ftp/ycw/xfile/www/json/assets.json &#124; jq -c .version)&nbsp;&nbsp;</span></li><li><span>VERSION=$&#123;VERSION<span class="comment">//&#92;&quot;/&#125;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>UpdateTime=$(cat /www/ftp/ycw/xfile/www/json/assets.json &#124; jq -c .UpdateTime)&nbsp;&nbsp;</span></li><li><span>UpdateTime=$&#123;UpdateTime<span class="comment">//[[:space:]]/_&#125;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>echo $UNAME&nbsp;&nbsp;</span></li><li><span>echo $UpdateTime&nbsp;&nbsp;</span></li><li class="alt"><span>cp /www/ftp/ycw/xfile/www/json/assets.json /www/ftp/back/xfile/www/json/assets-$VERSION-$BUILD_USER_ID-v$BUILD_NUMBER.json&nbsp;&nbsp;</span></li><li><span>cd /www/ftp/ycw/xfile/www/ &amp;&amp; zip -r -q /www/ftp/back/xfile/www/assets-json-$VERSION-$BUILD_USER_ID-v$BUILD_NUMBER.zip assets json/assets.json&nbsp;&nbsp;</span></li><li class="alt"><span>echo &quot;&quot; &gt; /www/ftp/back/xfile/www/sh/sh-$VERSION.txt&nbsp;&nbsp;</span></li><li><span>echo cp /www/ftp/back/xfile/www/json/assets-$VERSION-$BUILD_USER_ID-v$BUILD_NUMBER.json /www/ftp/ysx/xfile/www/json/assets.json &gt;&gt; /www/ftp/back/xfile/www/sh/sh-$VERSION.txt&nbsp;&nbsp;</span></li><li class="alt"><span>echo unzip /www/ftp/back/xfile/www/assets-json-$VERSION-$BUILD_USER_ID-v$BUILD_NUMBER.zip -d /www/ftp/ysx/xfile/www &gt;&gt; /www/ftp/back/xfile/www/sh/sh-$VERSION.txt&nbsp;&nbsp;</span></li></ol></div><p>其他版本，不增加平台版本号：</p><div class="codeText"><div class="codeHead">C#代码</div><ol start="1" class="dp-c"><li class="alt"><span><span>hostname&nbsp;&nbsp;</span></span></li><li><span><span class="preprocessor">############### 最后一次修改的用户 ####################</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>cd /www/ftp/ysx/xfile/www&nbsp;&nbsp;</span></li><li><span>ls -lh&nbsp;&nbsp;</span></li><li class="alt"><span><span class="preprocessor">############### 最后一次修改的用户 ####################</span><span>&nbsp;&nbsp;</span></span></li><li><span>cat /etc/redhat-release&nbsp;&nbsp;</span></li><li class="alt"><span>df -h&nbsp;&nbsp;</span></li><li><span>rsync -avzut --progress --delete /www/ftp/ycw/xfile/www/assets liuxinxiu@127.0.0.1::ysx_xfile_www --password-file=/pas/rsync.pas&nbsp;&nbsp;</span></li><li class="alt"><span>rsync -avzut --progress /www/ftp/ycw/xfile/www/json/assets.json liuxinxiu@127.0.0.1::ysx_xfile_www --password-file=/pas/rsync.pas&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span>echo http:<span class="comment">//ysx.cnmo.me/xfile/www/json/assets.json</span><span>&nbsp;&nbsp;</span></span></li><li><span>UNAME=$(cat /www/ftp/ycw/xfile/www/json/assets.json &#124; jq -c .name)&nbsp;&nbsp;</span></li><li class="alt"><span>UNAME=$&#123;UNAME<span class="comment">//&#92;&quot;/&#125;</span><span>&nbsp;&nbsp;</span></span></li><li><span>VERSION=$(cat /www/ftp/ycw/xfile/www/json/assets.json &#124; jq -c .version)&nbsp;&nbsp;</span></li><li class="alt"><span>VERSION=$&#123;VERSION<span class="comment">//&#92;&quot;/&#125;</span><span>&nbsp;&nbsp;</span></span></li><li><span>UpdateTime=$(cat /www/ftp/ycw/xfile/www/json/assets.json &#124; jq -c .UpdateTime)&nbsp;&nbsp;</span></li><li class="alt"><span>UpdateTime=$&#123;UpdateTime<span class="comment">//[[:space:]]/_&#125;</span><span>&nbsp;&nbsp;</span></span></li><li><span>UpdateTime=$&#123;UpdateTime<span class="comment">//&#92;&quot;/&#125;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>cp /www/ftp/ycw/xfile/www/json/assets.json /www/ftp/back/xfile/www/json/assets-$VERSION-$UNAME-$UpdateTime.json&nbsp;&nbsp;</span></li><li><span>cd /www/ftp/ycw/xfile/www/ &amp;&amp; zip -r -q /www/ftp/back/xfile/www/assets-json-$VERSION-$UNAME-$UpdateTime.zip assets json/assets.json&nbsp;&nbsp;</span></li><li class="alt"><span>echo &quot;&quot; &gt; /www/ftp/back/xfile/www/sh/sh-$VERSION-$UNAME-$UpdateTime.txt&nbsp;&nbsp;</span></li><li><span>echo cp /www/ftp/back/xfile/www/json/assets-$VERSION-$UNAME-$UpdateTime.json /www/ftp/ysx/xfile/www/json/assets.json &gt;&gt; /www/ftp/back/xfile/www/sh/sh-$VERSION-$UNAME-$UpdateTime.txt&nbsp;&nbsp;</span></li><li class="alt"><span>echo unzip /www/ftp/back/xfile/www/assets-json-$VERSION-$UNAME-$UpdateTime.zip -d /www/ftp/ysx/xfile/www &gt;&gt; /www/ftp/back/xfile/www/sh/sh-$VERSION-$UNAME-$UpdateTime.txt&nbsp;&nbsp;</span></li></ol></div><p>&nbsp;代码同步超级管理员</p><div class="codeText"><div class="codeHead">C#代码</div><ol start="1" class="dp-c"><li class="alt"><span><span>myPath=</span><span class="string">&quot;/www/ftp/$&#123;userName//&#92;&quot;/&#125;&quot;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="preprocessor">###############&nbsp;这里的-d&nbsp;参数判断$myPath是否存在&nbsp;###############</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="keyword">if</span><span>&nbsp;[&nbsp;!&nbsp;-d&nbsp;</span><span class="string">&quot;$myPath&quot;</span><span>&nbsp;]&nbsp;;&nbsp;then&nbsp;&nbsp;</span></span></li><li><span>echo&nbsp;<span class="string">&quot;这个目录不存在呀！有问题请及时与管理员联系：liu.xinxiu@cnmo.com&quot;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>cat&nbsp;$myPath&nbsp;&nbsp;</span></li><li><span>exit&nbsp;&nbsp;</span></li><li class="alt"><span><span class="preprocessor">#else&nbsp;&nbsp;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="preprocessor">#echo&nbsp;&quot;目录存在！&quot;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>fi&nbsp;&nbsp;</span></li><li><span><span class="preprocessor">###############&nbsp;这里的-d&nbsp;参数判断$myPath是否存在&nbsp;###############</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>proName=$&#123;projectName<span class="comment">//&#92;&quot;/&#125;</span><span>&nbsp;&nbsp;</span></span></li><li><span>proPath=&quot;$myPath/xfile/$proName<span class="string">&quot;</span>&nbsp;</span></li><li class="alt"><span><span class="string">ysxPath=&quot;</span><span>/www/ftp/ysx/xfile/$proName</span><span class="string">&quot;</span>&nbsp;</span></li><li><span><span class="string">backPath=&quot;</span><span>/www/ftp/back/xfile/$proName</span><span class="string">&quot;</span>&nbsp;</span></li><li class="alt"><span>&nbsp;</span></li><li><span><span class="string">hostname</span>&nbsp;</span></li><li class="alt"><span><span class="string">###############&nbsp;最后一次修改的用户&nbsp;####################</span>&nbsp;</span></li><li><span><span class="string">cd&nbsp;$proPath</span>&nbsp;</span></li><li class="alt"><span><span class="string">ls&nbsp;-lh</span>&nbsp;</span></li><li><span><span class="string">###############&nbsp;最后一次修改的用户&nbsp;####################</span>&nbsp;</span></li><li class="alt"><span><span class="string">cat&nbsp;/etc/redhat-release</span>&nbsp;</span></li><li><span><span class="string">df&nbsp;-h</span>&nbsp;</span></li><li class="alt"><span>&nbsp;</span></li><li><span><span class="string">###############&nbsp;数据同步&nbsp;####################</span>&nbsp;</span></li><li class="alt"><span><span class="string">rsync&nbsp;-avzut&nbsp;--progress&nbsp;--delete&nbsp;$proPath/assets&nbsp;liuxinxiu@127.0.0.1::ysx_xfile_$proName&nbsp;--password-file=/pas/rsync.pas</span>&nbsp;</span></li><li><span><span class="string">cp&nbsp;$proPath/json/assets.json&nbsp;$ysxPath/json/assets.json</span>&nbsp;</span></li><li class="alt"><span><span class="string">###############&nbsp;数据同步&nbsp;####################</span>&nbsp;</span></li><li><span>&nbsp;</span></li><li class="alt"><span><span class="string">echo&nbsp;http://ysx.cnmo.me/xfile/$proName/json/assets.json</span>&nbsp;</span></li><li><span><span class="string">UNAME=$(cat&nbsp;$proPath/json/assets.json&nbsp;&#124;&nbsp;jq&nbsp;-c&nbsp;.name)</span>&nbsp;</span></li><li class="alt"><span><span class="string">UNAME=$&#123;UNAME//&#92;&quot;/&#125;</span>&nbsp;</span></li><li><span><span class="string">VERSION=$(cat&nbsp;$proPath/json/assets.json&nbsp;&#124;&nbsp;jq&nbsp;-c&nbsp;.version)</span>&nbsp;</span></li><li class="alt"><span><span class="string">VERSION=$&#123;VERSION//&#92;&quot;/&#125;</span>&nbsp;</span></li><li><span><span class="string">UpdateTime=$(cat&nbsp;$proPath/json/assets.json&nbsp;&#124;&nbsp;jq&nbsp;-c&nbsp;.UpdateTime)</span>&nbsp;</span></li><li class="alt"><span><span class="string">UpdateTime=$&#123;UpdateTime//[[:space:]]/__&#125;</span>&nbsp;</span></li><li><span><span class="string">UpdateTime=$&#123;UpdateTime//&#92;:/_&#125;</span>&nbsp;</span></li><li class="alt"><span><span class="string">UpdateTime=$&#123;UpdateTime//&#92;&quot;/&#125;</span>&nbsp;</span></li><li><span>&nbsp;</span></li><li class="alt"><span><span class="string">###############&nbsp;数据备份操作&nbsp;####################</span>&nbsp;</span></li><li><span><span class="string">cp&nbsp;$proPath/json/assets.json&nbsp;$backPath/json/assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;.json</span>&nbsp;</span></li><li class="alt"><span><span class="string">cd&nbsp;$proPath/&nbsp;&amp;&amp;&nbsp;zip&nbsp;-r&nbsp;-q&nbsp;$backPath/assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;.zip&nbsp;assets&nbsp;json/assets.json</span>&nbsp;</span></li><li><span><span class="string">echo&nbsp;&quot;</span><span class="string">&quot;&nbsp;&gt;&nbsp;$backPath/sh/assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;.txt</span>&nbsp;</span></li><li class="alt"><span><span class="string">echo&nbsp;cp&nbsp;$backPath/json/assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;.json&nbsp;$ysxPath/json/assets.json&nbsp;&gt;&gt;&nbsp;$backPath/sh/assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;.txt</span>&nbsp;</span></li><li><span><span class="string">echo&nbsp;unzip&nbsp;-o&nbsp;$backPath/assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;.zip&nbsp;-d&nbsp;$ysxPath&nbsp;&gt;&gt;&nbsp;$backPath/sh/assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;.txt</span>&nbsp;</span></li><li class="alt"><span><span class="string">echo&nbsp;sed&nbsp;-i&nbsp;&quot;</span><span class="string">'&quot;s/,'</span><span>&quot;addOth</span><span class="string">&quot;':&#123;/,'&quot;</span><span>Fallback</span><span class="string">&quot;':'&quot;</span><span class="string">'$BUILD_USER_ID-v$&#123;ENV,&nbsp;var=&quot;BUILD_ID&quot;&#125;'</span><span class="string">&quot;','&quot;</span><span>addOth</span><span class="string">&quot;':&#123;/g&quot;</span><span>'</span><span class="string">&quot;&nbsp;$ysxPath/json/assets.json&nbsp;&gt;&gt;&nbsp;$backPath/sh/assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;.txt</span>&nbsp;</span></li><li><span><span class="string">###############&nbsp;数据备份操作&nbsp;####################</span>&nbsp;</span></li><li class="alt"><span>&nbsp;</span></li><li><span>&nbsp;</span></li><li class="alt"><span><span class="string">###############&nbsp;维护回退版本列表&nbsp;####################</span>&nbsp;</span></li><li><span><span class="string">versionList=&quot;</span><span>$backPath/versionList.txt</span><span class="string">&quot;</span>&nbsp;</span></li><li class="alt"><span><span class="string">if&nbsp;[&nbsp;!&nbsp;-f&nbsp;&quot;</span><span>$versionList</span><span class="string">&quot;&nbsp;];&nbsp;then</span>&nbsp;</span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;#touch&nbsp;&quot;</span><span>$versionList</span><span class="string">&quot;</span>&nbsp;</span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&quot;</span><span>vlist=assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;</span><span class="string">&quot;&nbsp;&gt;&nbsp;$backPath/versionList.txt</span>&nbsp;</span></li><li><span><span class="string">else&nbsp;</span>&nbsp;</span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;#grep&nbsp;-q&nbsp;&quot;</span><span>裸照</span><span class="string">&quot;&nbsp;urfile&nbsp;&nbsp;&amp;&amp;&nbsp;echo&nbsp;&quot;</span><span>有的</span><span class="string">&quot;&nbsp;&nbsp;&#124;&#124;&nbsp;echo&nbsp;&quot;</span><span>没的</span><span class="string">&quot;</span>&nbsp;</span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;grep&nbsp;-q&nbsp;&quot;</span><span>assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;</span><span class="string">&quot;&nbsp;$backPath/versionList.txt&nbsp;&nbsp;&amp;&amp;&nbsp;echo&nbsp;&quot;</span><span>相同代码在备份文件中已经存在，已再次执行了代码同步！您还可以选择代码回滚功能，一键回退指定版本~</span><span class="string">&quot;&nbsp;&nbsp;&#124;&#124;&nbsp;sed&nbsp;-i&nbsp;&quot;</span><span>/^vlist.*$/s</span><span class="comment">//&amp;&nbsp;,assets-$&#123;VERSION&#125;__$&#123;UpdateTime&#125;/g&quot;&nbsp;$backPath/versionList.txt</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>fi&nbsp;&nbsp;</span></li><li><span><span class="preprocessor">###############&nbsp;维护回退版本列表&nbsp;####################</span><span>&nbsp;&nbsp;</span></span></li></ol></div><p>&nbsp;</p>
]]>
</description>
</item><item>
<link>http://liuxinxiu.com:80/s//#blogcomment</link>
<title><![CDATA[[评论] 执行SHELL同步代码到预上线和代码回退]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://liuxinxiu.com:80/s//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>