红日四隧道连接后进不了shell

再观看你做的红日四,请问一下这里想进入shell但是就断开连接了是什么问题。

img

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7639041
  • 这篇博客也不错, 你可以看下自定制shell提示符
  • 除此之外, 这篇博客: 通过Shell命令-监视一个进程或端口,挂掉后自动重启,并自定义日志中的 2.针对进程名 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • processExist=`ps aux|grep kylin |grep -v "grep"`
      if [[ -z $processExist ]];then
        /opt/soft/test.sh start
      echo "proecss is restarted"
      fi
    

    第一行是执行查询’kylin’的进程,并把grep的进程去掉,这样就能确定进程是否存活(但是不保险,后续会说)
    然后就是简单的判断了
    -z是判断 :

    • z 判断 变量的值,是否为空; zero = 0
    • 变量的值,为空,返回0,为true
    • 变量的值,非空,返回1,为false

    如果为空,我们就执行脚本!并输出一条消息。当然也可以自定义一些动作,比如日志,并输出到指定文件。

    单独写一下日志的脚本就是:

    MYLOG="/opt/soft/logs/kylin.restart.log"
    echo "$1"
    echo "$(date -d today +"%Y%m%d %H:%M:%S") - $1" >> ${MYLOG} 2>> ${MYLOG}
    

    这个仅仅是打印了时间而已,可以在$1进行 自定义。

    但是这样有一个弊端。很多时候,我们无法通过名字去确定进程,可能几个进程有相似的名字,假如说我们有kylin_log 和 kylin_test两个进程,当我们grep的时候用kylin会查出来两个进程(除了grep)。
    所以可以用另外一种方式——端口。

    ###3.针对端口
    比如我想针对固定的7070端口进行监控,那么要修改shell脚本,使用awk:

    KylinListeningPort=`netstat -an | grep ":7070" | awk '$1 == "tcp" && $NF == "LISTEN" {print $0}' | wc -l`
    

    然后进行判断

    if [ $KylinListeningPort-eq 0 ];then
      如果端口没有占用的话要怎么怎么样
    else
      如果端口被占用的话要怎么怎么样
    fi