[ kill ]功能描述:
用於向任何程序組或程序傳送訊號。
1#include
<
sys/
types.h
>23
#include
<
signal.h
>45
intkill(pid_t pid,
intsig);67
引數:
pid:可能選擇有以下四種
1. pid大於零時,pid是訊號欲送往的程序的標識。
2. pid等於零時,訊號將送往所有與呼叫kill()的那個程序屬同乙個使用組的程序。
3. pid等於-1時,訊號將送往所有呼叫程序有權給其傳送訊號的程序,除了程序1(init)。
4. pid小於-1時,訊號將送往以-pid為組標識的程序。
sig:準備傳送的訊號**,假如其值為零則沒有任何訊號送出,但是系統會執行錯誤檢查,通常會利用sig值為零來檢驗某個程序是否仍在執行。
返回值說明: 成功執行時,返回0。失敗返回-1,errno被設為以下的某個值 einval:指定的信號碼無效(引數 sig 不合法) eperm;許可權不夠無法傳送訊號給指定程序 esrch:引數 pid 所指定的程序或程序組不存在
1#include
<
sys/
wait.h
>
2#include
<
sys/
types.h
>
3#include
<
stdio.h
>
4#include
<
stdlib.h
>
5#include
<
signal.h
>67
intmain(
void)8
19else
if( 0==
childpid )
2025
else
2637
else
384142}
43}4445
exit(exit_success);46}
47//
-----------------
48[root@localhost src]# gcc killer.c
49[root@localhost src]# ./a.
out50
in child process
514545
killed
在確信fork呼叫成功後,子程序睡眠100秒,然後退出。
同時父程序在子程序上呼叫waitpid函式,但使用了wnohang選項(
wnohang如果沒有任何已經結束的子程序則馬上返回,不予以等
待),所以呼叫waitpid後立即返回。父程序接著殺死子程序,如果kill執行失敗,
返回-1,否這返回0。如果kill執行失敗,父程序第二次呼叫waitpid,
保證他在子程序退出後再停止執行。否則父程序顯示一條成功訊息後退出。
標頭檔案用法:
linux Kill多個程序
經常需要kill多個程序,這些程序包含共同的關鍵字,可以用一條命令kill掉它們。ps aux grep common cut c 9 15 xargs kill 9 管道符 用來隔開兩個命令,管道符左邊命令的輸出會作為管道符右邊命令的輸入。下面說說用管道符聯接起來的幾個命令 ps aux 檢視所有...
Linux kill多個程序
經常需要kill多個程序,這些程序包含共同的關鍵字,可以用一條命令kill掉它們。ps aux grep common cut c 9 15 xargs kill 9 管道符 用來隔開兩個命令,管道符左邊命令的輸出會作為管道符右邊命令的輸入。下面說說用管道符聯接起來的幾個命令 ps aux 檢視所有...
linux Kill 多個程序
文章1 經常需要kill多個程序,這些程序包含共同的關鍵字,可以用一條命令kill掉它們。ps aux grep common cut c 9 15 xargs kill 9 管道符 用來隔開兩個命令,管道符左邊命令的輸出會作為管道符右邊命令的輸入。下面說說用管道符聯接起來的幾個命令 ps aux ...