我正在尝试设置一个 cron 作业,该作业将使在 centos 服务器中的特定端口上运行的进程保持活动状态。
根据之前的讨论,我提出了以下脚本,该脚本将由 cron 作业调用:
#!/bin/bash
opt="$(lsof -i tcp:9090| awk 'NR!=1 {print $2}')"
echo $opt
if [ -z "$opt" ]
then
# nohup npm start & 1>/dev/null 2>/dev/null &
echo "App Restarted" | mail -s "App is restarted" "myemail"
fi
无论变量输出中的值如何,都会触发此操作,不确定这里出了什么问题。
答案1
#assign output of a command to a variable
output="$(command)"
#test variable to see if empty
if [ -z "$output" ]
then
#do something
a_command
fi