代码之家  ›  专栏  ›  技术社区  ›  Alexandr Bortnik

主机停机时报警

  •  0
  • Alexandr Bortnik  · 技术社区  · 6 年前

    我有一个bash脚本,它可以帮助我知道我的一些服务器何时停机。

     #!/bin/bash
    HOSTS="192.168.11.154 192.168.11.155"
    COUNT=5 
    
    pingtest(){
      for myHost in "$@"
      do
        ping -c "$COUNT" "$myHost" && return 1
      done
      return 0
    }
    
    if pingtest $HOSTS
    then
      # 100% failed
    zenity --warning --text="<span size=\"xx-large\">WARNING</span>\n\n\n<b>*IP*</b> is down" --title="SERVER DOWN" --ok-label="OKAY"
    fi
    

    那么,我如何知道哪个特定的服务器已关闭? 我要换货 知识产权 至192.168.11.154或192.168.11.155(取决于不可用的内容)

    2 回复  |  直到 6 年前
        1
  •  0
  •   Robin479    6 年前
    #!/bin/bash
    
    HOSTS="192.168.11.154 192.168.11.155"
    COUNT=5
    
    pingtest () {
      ping -c "$COUNT" "$1" || return 1
    }
    
    for H in $HOSTS; do
      if ! pingtest $H; then
        zenity --warning --text="<span size=\"xx-large\">WARNING</span>\n\n\n<b>${H}</b> is down" --title="SERVER DOWN" --ok-label="OKAY"
      fi
    done
    
        2
  •  0
  •   Abhijit Pritam Dutta    6 年前

    最好将IP存储在两个单独的变量中,并调用函数两次:-

    HOSTS1="192.168.11.154"
    HOSTS2="192.168.11.155"
    
    if pingtest $HOSTS1
     //
    
    if pingtest $HOSTS2