在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
自从法现 SSH 可以执行远端命令后,ftp 软件也渐渐很少用了。 每次更新服务器代码,都要打包、上传、登录到服务器修改文件权限、更新 Cache 等等,又慢又容易出错,所以做成脚本,一次帮我搞定,自己就点上一根烟坐在电脑面前发呆,要么就玩会儿《植物大战僵尸》啥的,悠闲! PS: Ant 以及 Phing 用户,你们可以无视了… 我只是喜欢玩 Shell 而已。 复制代码 代码如下: #!/bin/sh HOME='/cygdrive/d/public_html/myproject' ## 先打包本地代码 ## 排除如下文件: *.svn, *.bat, upload.sh, cache ## 如果需要 exclude 的文件很多,可以使用参数 --exclude-from=FILE ## 将文件一行行写入 FILE 中 cd $HOME tar jcf tmp.tar.bz2 * \ --exclude=*.bat \ --exclude=*.bz2 \ --exclude=*.gz \ --exclude=.svn \ --exclude=cache \ --exclude=upload.sh \ ## 通过 SCP 上传文件 scp tmp.tar.bz2 [email protected]:/home/public_html/myproject/tmp.tar.bz2 ## 执行远程 ssh 命令 ## 这里执行了另外一个脚本 load.sh ssh [email protected] " cd /home/public_html/myproject tar jxf tmp.tar.bz2 chown -R web:web * chmod -R 755 * sh load.sh rm -f tmp.tar.bz2 " ## 删除本地文件 rm -f tmp.tar.bz2 echo "Everything is done." # 星期一 一月 11, 2010 by Verdana # vim: set expandtab tabstop=4 shiftwidth=4: SSH 我配置成了自动登录,可以参考这里。 |
请发表评论