2021年7月23日 星期五

[ Bash 範例代碼 ] Check remote server connectivity

 Source From Here

02-1_ping_server.sh
  1. #!/bin/bash  
  2. # Author: John Lee  
  3. # Date: 2021/07/24  
  4. # Description: This script will ping a remote host  
  5. # Modified: 2021/07/24  
  6.   
  7. HOST=${HOST:-localhost}  
  8. ping -c1 ${HOST} &> /dev/null  
  9. if [ $? -eq 0 ]; then  
  10.   echo $HOST ok  
  11. else  
  12.   echo $HOST NOT ok!  
  13. fi  
Execution output:
# export HOST=8.8.8.8 && ./02-1_ping_server.sh
8.8.8.8 ok

# export HOST=8.8.8.9 && ./02-1_ping_server.sh
8.8.8.9 NOT ok!

02-2_ping_servers.sh
  1. #!/bin/bash  
  2. # Author: John Lee  
  3. # Date: 2021/07/24  
  4. # Description: This script will ping multiple hosts given in  
  5. #   a file declared in variable `IP_LIST_FILE`  
  6. # Modified: 2021/07/24  
  7. function ping_host {  
  8.   ping -c1 $1 &> /dev/null  
  9.   if [ $? -eq 0 ]; then  
  10.     echo $1 ok  
  11.   else  
  12.     echo $1 NOT ok!  
  13.   fi  
  14. }  
  15.   
  16. IP_LIST_FILE=${IP_LIST_FILE:-"ip_list_file"}  
  17. if [ -f ${IP_LIST_FILE} ]; then  
  18.   for ip in $(cat $IP_LIST_FILE)  
  19.   do  
  20.     ping_host $ip  
  21.   done  
  22. else  
  23.   echo "File $IP_LIST_FILE not exist!"  
  24.   exit 1  
  25. fi  
Execution output:
# cat ip_list_file
8.8.8.8
168.95.1.1


# unset IP_LIST_FILE
# ./02-2_ping_servers.sh
8.8.8.8 ok
168.95.1.1 ok


# export IP_LIST_FILE='not_exist' && ./02-2_ping_servers.sh
File not_exist not exist!


沒有留言:

張貼留言

[Git 常見問題] error: The following untracked working tree files would be overwritten by merge

  Source From  Here 方案1: // x -----删除忽略文件已经对 git 来说不识别的文件 // d -----删除未被添加到 git 的路径中的文件 // f -----强制运行 #   git clean -d -fx 方案2: 今天在服务器上  gi...