linux判斷進程是否存在
ps aux | grep 進程名
假定程序名稱叫 test
ps aux | grep test
㈡ linux查看進程命令
1、首先打開xshell軟體,連接上linux伺服器,使用指令ps查看系統進程,參數a表示全部,u表示以用戶格式顯示,x表示進程參數。
㈢ 如何查看 linux 進程是否已經運行
查看 linux 的進程是否運行用ps命令
輸入下面的ps命令,顯示所有運行中的進程:
# ps aux | less
其中,
-A:顯示所有進程
a:顯示終端中包括其它用戶的所有進程
x:顯示無基飢控制終端的進程
任察姿務:查看系統中的每個進程。
# ps -A
# ps -e
任務:查看非root運行的進程敗鋒絕
# ps -U root -u root -N
任務:查看用戶vivek運行的進程
# ps -u vivek
任務:top命令
top命令提供了運行中系統的動態實時視圖。在命令提示行中輸入top
㈣ linux查看某個進程是否存在
使用 ps 命令,比如:
ps -au 看的是所有用戶進程
ps -aux 會看到所有的後台進程,包括一些系統的進程,就很多了
如果你只想找到某個指定進程
ps -ef | grep python 就會看到所有跟python有關的進程,其它進程,你換個名字就好了,
搜到有,那這個進程就存在,沒有也有搜索不到
㈤ linux c 檢查進程是否存在
1、ps 是一個shell裡面的命令,用來輸出當前進程狀態的。想知道詳細用法可以在linux命令行中輸入: man ps
2、"ABNORMAL",注意這是一個字元串常量,因為在C語言中使用雙引號可以定義一個字元串常量。這個字元串可以是程序員自己隨便寫的,就像"hello word" 一樣。"ABNORMAL"表示不正常的意思。
3、ERROR、CONFLICT、NOERROR三個常量,可以使用#define語句進行定義。至於是在哪個頭文件中定義很難說。我建議你可以在當前的.c文件開始的地方自己定義一下,例如:
#include <stdio.h>
... /*其他的頭文件等等*/
#define ERROR -1
#define CONFLICT 1
#define NOERROR 0
... /*其他的函數*/
int detect_process(char * process_name)
{
FILE *ptr;
char buff[512];
char ps[128];
sprintf(ps,"ps -e | grep -c ' %s</p>",process_name);
strcpy(buff,"ABNORMAL");
if((ptr=popen(ps, "r")) != NULL)
{
while (fgets(buff, 512, ptr) != NULL)
{
if(atoi(buff)>=2)
{
pclose(ptr);
return CONFLICT;
}
}
}
if(strcmp(buff,"ABNORMAL")==0) /*ps command error*/
return ERROR;
pclose(ptr);
return NOERROR;
}
請注意:裡面有個popen() pclose()函數,是通過管道創建一個進程,這兩個函數必須要有<stdio.h>文件。具體的參數可以參看網路:http://ke..com/view/2445803.htm?fr=aladdin。
atoi()函數能將字元串轉換成整型數。參考網路:http://ke..com/view/653935.htm。
4、整個程序的意思是:
(1)使用"ps"命令,將結果保存到ps變數中,注意sprintf的第一個參數是一個char數組。
(2)將"ABNORMAL"字元串保存到buff變數中,buff也是一個char數組。
(3)使用popen()函數創建一個進程,並將這個進程定向到標准輸出(也就是顯示器上)。
(4)將進程的輸入出存到buff變數中,然後將其轉化為數字
(5)如果這個數字>=2說明發生了沖突,返回CONFLICT
(6)在循環之後,比較一下,如果buff一直是"ABNORMAL",說明ps 命令出錯,返回ERROR
(7)否則返回NOERROR
綜上:ERROR、CONFLICT、NOERROR幾個變數只是作為函數返回值,告訴函數調用者這次調用的結果而已,所以完全可以自己定義。除非你們公司已經規定了ERROR必須是某個值,不然你是可以自己定義的,只是在以後調用detect_process()函數的時候記得什麼返回值對應什麼結果就行了。
自己定義就是在.c文件開頭使用#define 好了。
㈥ linux查看有哪些進程正在使用
您好,方法
Linux中常用的查看進程的命令是:ps
該命令可以確定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有僵屍、哪些進程佔用了過多的資源等信息,常用於監控後台進程的工作情況
使用man ps命令可以查看該命令的介紹和用例,
使用ps -ef查看所有進程,輸出信息如圖。
使用ps axu,查看所有進程,輸出信息如圖。
如果想查詢特定進程,可以使用
(1)ps -ef|grep 名稱。
(2)ps aux|grep 名稱。
㈦ linux查看是否有某個運行的進程命令
Linux查看所有正在運行的進程,可以用ps aux命令,它的-a參數,表示不與終端有關的進程也顯示出來。如果想知道某個進程是否在運行,可以用ps aux命令加管道符和grep選取命令,grep選取命令可以根據關鍵字來過濾管道符傳遞過來的數據,從而只列出用戶想看到的內容,比如想知道httpd進程是否在運行就可以這樣:
ps aux | grep httpd
如果httpd進程沒有運行,這個命令就不顯示任何內容;如果httpd進程正在運行,這個命令就會顯示httpd進程的相關信息。
㈧ linux系統的進程及埠怎麼查看
linux怎麼查看進程及埠?我們一起來了解一下吧。
1、打開linux系統,在linux的桌面的空白處右擊。
2、在彈出的下拉選項里,點擊打開終端。
3、輸入ps-ef命令,回車運行即可查看所有運行進程。
4、輸入cat/etc/services命令,可查看埠。
㈨ linux shell 判斷進程是否存在
如果你是通過一個進程的謹擾仔名字作為關鍵詞來查找進程是祥汪否存在的話,可使用
ps -ef | grep "<關鍵詞>" | wc -l
輸出為0表示不存在,輸出大於李襲0,表示存在,且數字就是這個關鍵詞進程的個數;
如果你是通過進程號PID來查找進程是否存在,可以使用
ps --no-heading <PID> | wc -l
同樣,
輸出為0表示不存在,輸出=1,表示存在,因為進程號不可能重復,所以輸出肯定非0即1
㈩ Linux系統中用於查看系統進程狀態的命令是什麼
命令是[ps-aux]。
該命令主要用於查看當前在線上的用戶情況。這信段個命令非常有用。如果用戶想和其他用戶建立即時通訊,比如使用talk命令,那麼首先要確定的就是該用戶確實在線上,不然talk進程就無法建立起來。又如,系統管理員希望監視每個模態登錄的用戶此時此刻的所作所為。
該命令也用於顯示登錄到系統的用戶情況,但是與who不同的是,w命令功能更加強大,它不但可以顯示有誰登錄到系統,還可以顯示出這些用戶當前正在進行的工作,並且統計數據相對who命令來說更加詳細。旦坦源