Play下编写1个start.sh
grep -n . server.pid
grep -n ^[0-9]* server.pid
查看play的进程号(输出-> 1:3146)
#!/bin/sh
cd /project/sis/branches/uat/play #切换到play目录下
kill -9 $(cat server.pid) #使用$() 结合cat 命令获取进程号并进行替换
rm server.pid #删除server.pid文件
newlogfile=`date '+%Y-%m-%d_%H:%M:%S'` #为日期变量赋值(反引号``中的内容将解析为shell命令)
mv logs/system.out logs/system.out_$newlogfile #重命名文件
play dependencies #重新导入Play的依赖
play start #重启服务
说明:
echo `date` 即执行date命令,输出日期
'+%Y-%m-%d %H:%M%S' 即日期格式(其中的"-" 和 ":"为日期和时间的分割样式):
%Y 年
%m 月
%d 日
%H 时
%M 分
%S 秒
因此,`date '+%Y-%m-%d %H:%M:%S'`
被执行后,输出: 2014-03-28 20:58:24
cd /project/sis/trunk/play
svn update 1>>/var/log/release/sis.txt 2>>/var/log/release/sis.txt
kill -9 $(cat server.pid) 1>>/var/log/release/sis.txt 2>>/var/log/release/sis.txt
rm server.pid 1>>/var/log/release/sis.txt 2>>/var/log/release/sis.txt
newlogfile=`date '+%Y-%m-%d_%H:%M:%S'`
mv logs/system.out logs/system.out_$newlogfile
play dependencies 1>>/var/log/release/sis.txt 2>>/var/log/release/sis.txt
play start 1>>/var/log/release/sis.txt 2>>/var/log/release/sis.txt
if [ $? -eq 0 ];then
echo '-----------------success-----------------------'
else
echo '-----------------fail--------------------------'
if