最近在自学shell,编写了一个shell脚本监控程序的运行,打印出开始时间和结束时间,查了一些资料,写了一个简单的脚本,希望对大家有用。
#!/bin/bash
# 指定一个写入开始和结束时间的txt文件
log_file="./xxxx.txt"
# 将脚本开始执行时间写入txt文件
echo "start time: `date "+%Y-%m-%d %H:%M:%S"`" > $log_file
# 定义两个常量,循环的时候用
flag=1
result=1
下接
# 判断flag的值,进入循环
while [ "${flag}" -eq 1 ]
do
# 查询程序的pid,赋值给result,xxx为程序名称
result=`pidof xxx`
# 如果程序的pid长度为零,就代表程序挂了,追加写入结束时间,脚本结束
if [ -z "${result}" ]
then
echo "stop time: `date "+%Y-%m-%d %H:%M:%S"`" >> $log_file
flag=0
fi
done