
一般情况,输入该程序的名字abcd,然后回车。
如果忘记了该程序的全名,只要你还记得开头的一些字母,可以输入一两个字符ab后,按键盘Tab键,自动帮你查找,提示。
如果是你自己安装的程序,则需要知道路径(目录)
cd命令进入该目录,然后输入 ./abcd
有时候程序不能运行,可能是没有运行权限,需要先赋予运行权限。
sudo chmod u+x abcd
然后输入 ./abcd 运行。
【--------------------------------start of script -------------------------------】#!/bin/bash
# 运行记录日志
runlog=/var/test/test.log
# 切换到脚本的工作目录
cd /var/test
# 首先以正常的方式(尝试)结束掉test服务的进程,静默结束
pgrep test |xargs kill -15 &>/dev/null
# 休息1秒,让出1秒时间充分地停止进程
sleep 1
# 检查一下test有没有被成功的结束,首先判断一下执行kill -15以后是否残留有test服务的进程
processnum=$(pgrep test |wc -l)
# 如果test进程数量大于0,则自动让脚本采用强制进程结束的方式快速终止test进程;
if [[ "$processnum" -gt "0" ]]then
pgrep test |xargs kill -9 &>/dev/null
# 发送wait指令,kill -9 一旦执行完毕脚本立刻执行接下来的 *** 作
wait
fi
# 记录停止服务的时间,时间格式的呈现:11/30/13 06:25:37
echo "$(date +"%D %T") service test stoped" >>$runlog
# 执行你的启动命令 ,静默启动
./test ./test.lua &>/dev/null
# 休息1秒,让出1秒时间充分地让test进程启动完毕
sleep 1
# 统计启动命令执行后test进程的数量
processnum=$(pgrep test |wc -l)
# 如果进程的数量大于0,记录服务成功启动;
if [[ "$processnum" -gt "0" ]]then
echo "$(date +"%D %T") service test start sucess" >>$runlog
# 否则(进程数量等于0),记录服务启动失败;
else
echo "$(date +"%D %T") service test start fail" >>$runlog
fi
【----------------------------end of script -----------------------------】
将上述代码存入到test.sh
在系统的crontab里面加入 00 00,12 * * * /var/test/test.sh &>/dev/null ,便捷的方法:echo '00 00,12 * * * /var/test/test.sh &>/dev/null' >>/var/spool/cron/*** , ***用能够有权限执行test.sh的用户的账号名称替代(如果不是root用户,那么要确保你调用的用户的SHELL环境变量是/bin/bash或者是/bin/sh),比如使用root, echo '00 00,12 * * * /var/test/test.sh &>/dev/null' >>/var/spool/cron/root
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)