start_modbus_task.sh
#!/bin/sh
echo '---------start_modbus_task.sh start ---------'
mkdir -p /var/spool/cron/crontabs
cp -p /etc/crontabs/root /var/spool/cron/crontabs
chmod 777 /var/spool/cron/crontabs/root
crond
sh /root/modbus_client/monitor_modbus_client.sh
echo '---------start_modbus_task.sh stop ---------'
stop_modbus_task.sh
#!/bin/sh
#crontab -l
#crontab -r
ps -ef | grep modbus_task.py | grep -v grep | awk '{print $1}'|xargs kill -9
/etc/crontabs/
/etc/crontabs/root
*/5 * * * * sh /root/modbus_client/monitor_modbus_client.sh
monitor_modbus_client.sh
#! /bin/sh
configfile=`ps -ef | grep modbus_task.py | grep -v grep | awk '{print $6}'`
echo "proc :"
echo $configfile
proc_name="/root/modbus_client/modbus_task.py --config_file "
funProcCheck(){
if [ ! -f "/root/modbus_client/$2" ]; then
echo "funProcCheck file /root/modbus_client/$2 not exist !"
return
fi
if [ ! -f "/root/modbus_client/$1" ]; then
echo "funProcCheck file /root/modbus_client/$1 not exist !"
return
fi
echo `cat /root/modbus_client/$2` |grep -q 'close'
if [ $? -eq 0 ]; then
echo "$2 close"
return
else
echo "$2 open"
fi
echo $configfile |grep -q "$1"
if [ $? -eq 0 ]; then
echo "include"
else
python $proc_name /root/modbus_client/$1 >/dev/null 2>&1 &
fi
}
funProcCheck com1_config.txt com1_run.txt
funProcCheck com2_config.txt com2_run.txt
funProcCheck com3_config.txt com3_run.txt
funProcCheck com4_config.txt com4_run.txt
funProcCheck com5_config.txt com5_run.txt
funProcCheck com6_config.txt com6_run.txt
funProcCheck com7_config.txt com7_run.txt
funProcCheck com8_config.txt com8_run.txt
#funProcCheck "com7_config.txt"
#funProcCheck "com8_config.txt"
2222