linux 脚本判定文件和目录以及进程

来源:互联网 发布:深圳奥萨制药 知乎 编辑:程序博客网 时间:2024/05/01 00:13

博客内容如题:

详细见脚本教程:http://blog.csdn.net/luopeiyuan1990/article/details/8193359

#!/bin/shecho "AgiTrack Protect Program"touch /tmp/Agitrack_tmpps > /tmp/Agitrack_tmpgrep AgiTrack /tmp/Agitrack_tmpif [ "$?" -eq 0 ]thenecho "AgiTrack aready started!"rm -f /tmp/Agitrack_tmpexit 1elseecho "AgiTrack hasn't run"firm -f /tmp/Agitrack_tmpif [ -d /tmp/log ]; thenecho " file exist ";elsemkdir $(/tmp/log);echo " create file";fiif [ -f /tmp/log/AgiTrack.log ];thenecho "Log Exist"elsetouch /tmp/log/AgiTrack.logecho "create Log"ficd /zchx/AgiTrackRelease/AgiTrack -t >/tmp/log/AgiTrack.log &if [ "$?" -eq 0 ]thenecho "AgiTrack start success!"elseecho "AgiTrack start fail!"fiexit 0

注意事项:if的判断中 -f  和 -d  需要空一格。


加入变量控制:


#!/bin/shPROGRAM="InitTrackPublisher"WORK_DIR=./PROGRAMLIST="PSLOG"TARGET_DIR=../exec/TARGET="TrackPublisher"RUN_TARGET=./TrackPublisherecho "$PROGRAM"################################################### Check target runnig status# 检查目标运行状态##################################################touch $WORK_DIR/$PROGRAMLISTps > $WORK_DIR/$PROGRAMLISTgrep $TARGET $WORK_DIR/$PROGRAMLISTif [ "$?" -eq 0 ]thenecho "$TARGET aready started!"rm -f $WORK_DIR/$PROGRAMLISTexit 1elseecho "$TARGET hasn't run"firm -f $WORK_DIR/$PROGRAMLIST################################################### Restart target# 重启目标##################################################cd $TARGET_DIRecho "Entering dir $TARGET_DIR"$RUN_TARGET >/tmp/$TARGET.log &echo "$RUN_TARGET >/tmp/$TARGET.log &"if [ "$?" -eq 0 ]thenecho "$TARGET start success!"exit 0elseecho "$TARGET start fail!"exit -1fiexit 2


开启新终端启动


#!/bin/shPROGRAM="Create HrdacCollector Init"BASHNAME=InitHrdacCollector.shSHPATH=$0BINPATH=./exec/BINNAME=./HrdacCollectorecho "$PROGRAM"################################################### Start target##################################################echo "Entering dir $BINPATH"cd ${SHPATH/$BASHNAME/"./"}cd $BINPATHecho ${PWD}gnome-terminal -x "$BINNAME"if [ "$?" -eq 0 ]thenecho "$BINNAME start success!"echo "$RUN_TARGET executed at another terminal "exit 0elseecho "$BINNAME start fail!"exit -1fi


命令互动脚本:


#!/bin/shroute >/tmp/route.loggrep 224.0.0.0 /tmp/route.logif [ "$?" -eq 0 ]thenecho "route 224.0.0.0 Normally "exit 0elseecho "route 224.0.0.0 Lost Creating "dateroute add -net 224.0.0.0/4 eth0fiexit 0





原创粉丝点击