2013年2月20日 星期三

[Linux 文章收集] 確認process是否存在 by name checker shell script撰寫

來源自 這裡 
Preface: 
這是我用來撰寫checker.sh的shell script 檢查 某java程式是否存在,而我的java程式使用 java JavaStart啟動程式,所以會有 "JavaStart" 的字眼. 

How: 
從 ps -aux 會看到系統中所有的 process,因此使用 grep 去過濾到 "JavaStart" 這個字眼的相關 process,用這種方式就可以判斷某個 process 存不存在. 底下是範例 shell script: 
  1. #!/bin/sh  
  2. SERVICE='JavaStart'  
  3.   
  4. if ps ax | grep -v grep | grep $SERVICE > /dev/null  
  5. then  
  6.     echo "$SERVICE service running, everything is fine"  
  7. else  
  8.     echo "$SERVICE is not running"  
  9.     sh /var/java/start.sh  
  10. fi  
"grep -v grep" 是濾掉有 "grep" 字眼的部分, 因為當你下 grep xxx, 同時你也 launch grep process 同時帶著 xxx 的關鍵字. 因此需要濾掉. 

Supplement: 
鳥哥私房菜 > 第十三章、學習 Shell Scripts 

沒有留言:

張貼留言

[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...