當前位置:首頁 » 編程軟體 » shell腳本監測進程啟動

shell腳本監測進程啟動

發布時間: 2022-08-30 16:41:59

① shell腳本判斷是否有某進程在運行

1 、可以通過ps命令獲取所有的進程,然後通過awk命令提取進程名,再用grep提取相應的進程名即可。

2、參考代碼如下:

ps-aux|awk'{print$11}'|grep"^$1">/dev/null
case$?in
0)
echo"findprocess$1"
;;
1)
echo"$1isnotrunning"
;;
*)
echo"unknowerror"
esac

3、運行結果如下

② 在安卓shell腳本中如何讓它一直運行判斷一個進程是否存在。 比如QQ進程 存在的話不進行任何操作

如果你是通過一個進程的名字作為關鍵詞來查找進程是否存在的話,可使用
ps -ef | grep "<關鍵詞>" | wc -l
輸出為0表示不存在,輸出大於0,表示存在,且數字就是這個關鍵詞進程的個數;

如果你是通過進程號PID來查找進程是否存在,可以使用
ps --no-heading <PID> | wc -l
同樣,
輸出為0表示不存在,輸出=1,表示存在,因為進程號不可能重復,所以輸出肯定非0即1

③ 如何編寫一個shell腳本實時的查看某個進程

如果進程名字是復雜且唯一的那隻需要使用grep做簡單匹配,使用下面命令:

ps-ef|grep-vgrep|grep'進程名字'&&echo'正在運行'||echo'已停止運行'

④ 怎麼獲取shell在控制台執行的進程id

當我在執行shell腳本時,它會啟動一個叫子shell的進程。作為主shell的子進程,子shell將shell腳本中的命令作為批處理運行(因此稱為「批處理進程」)。

在某些情況下,你也許想要知道運行中的子shell的PID。這個PID信息可以在不同的情況下使用。比如,你可以使用shell腳本的PID在/tmp下創建一個唯一的臨時文件。有時侯腳本需要檢測所有運行的進程,它可以從進程列表中排除自身的子shell。
在bash中,子shell進程的PID存儲在一個特殊的變數『$$'中。這個變數只讀,你不可以在腳本中修改它。比如:

復制代碼代碼如下:

#!/bin/bash
echo "PID of this script: $$"

上面的腳本會得到下面的輸出:

復制代碼代碼如下:

PID of this script: 6583

除了$$, bash shell還會導出其他的只讀變數。比如,PPID存儲子shell父進程的ID(也就是主shell)。UID存儲了執行這個腳本的當前用戶ID。比如:

復制代碼代碼如下:

#!/bin/bash

echo "PID of this script: $$"
echo "PPID of this script: $PPID"
echo "UID of this script: $UID"

輸出是:

復制代碼代碼如下:

PID of this script: 6686
PPID of this script: 4656
UID of this script: 1000

上面輸出中,PID每次執行都會變化。這個因為每次運行都會創建一個新的shell。另一方面,PPID每次都會一樣只要你在同一個shell中運行。

對於所有bash內置變數列表,參考man頁。

復制代碼代碼如下:

$ man bash

⑤ 求幫忙寫一個shell腳本,監控進程的。

#!/bin/sh
ps -ef | grep -v grep || grep -w 'java -jar /opt/mcb/scap/bin/ftp.jar monitor'
if [ $? -eq 0 ]; then
echo "start"
else
java start
fi

⑥ shell 檢測某一個進程是否存在

#!/bin/bash

pid=`ps -ef | grep "想要監控的程序名"|wc -l`

if [ -gt $pid ]
then
echo "is running"
else
echo "not running"
fi

⑦ shell 腳本檢測當前腳本已在執行則kill

sh /usr/local/sbin/gdas/start.sh
改為
source /usr/local/sbin/gdas/start.sh
用sh方式去執行就是另開一個shell去跑,相當於是非同步的,不等start.sh執行完就執行下面的判斷了。用source在當前shell執行該腳本,就是阻塞方式,就不存在此問題了。
建議先手動執行腳本,檢驗無誤了再加入crontab

⑧ shell腳本如何判斷應用程序是否開啟正常

你應該自己問自己一個問題,何所謂正常打開,正常打開的話有什麼特徵?能回答這個問題就可以解決這個問題了。

反正我是不明白什麼叫「正常打開」。如果加入到進程表就算正常打開的話,可以考慮樓上ps的做法。

熱點內容
淘寶上傳時間 發布:2025-02-09 02:42:13 瀏覽:637
ios緩存數據 發布:2025-02-09 02:32:06 瀏覽:253
蘋果手機如何存儲word 發布:2025-02-09 02:23:02 瀏覽:780
安卓手機如何有蘋果的emoji 發布:2025-02-09 02:11:02 瀏覽:808
編譯原理已知語言求文法習題 發布:2025-02-09 02:05:15 瀏覽:132
中國首個具有世界影響力的編譯器 發布:2025-02-09 01:56:21 瀏覽:720
tomcat上傳超時 發布:2025-02-09 01:41:42 瀏覽:484
androidactivity豎屏 發布:2025-02-09 01:41:40 瀏覽:378
家庭配置怎麼合理 發布:2025-02-09 01:36:14 瀏覽:808
頭條軍事源碼 發布:2025-02-09 01:31:53 瀏覽:998