HP-UX 中殺後臺程序的腳本

1554阅读 0评论2009-11-05 libin1983
分类:


之前在寫割接文檔時經常要寫:

以 aa 用戶 telnet 登錄到 bb 主機,進入 dd 目錄。

執行 ps -ef | grep 程序名 查詢到該進程的ID,讓后執行:

kill 進程ID ... ...


寫久了,自己也覺得煩 :)。

今晚寫了一段 shell 腳本,將 ps 查進程號,與 kill 進程合到了一步:)

今後,文檔可以精簡為:


以 aa 用戶 telnet 登錄到 bb 主機,進入 dd 目錄。

執行:

ps -fu `whoami` | grep -w 程序名 | grep -v $$ | awk '{print "kill " $2}' | sh

... ...

:D

其中主要用到了 "$$"。

寫成shell腳本如下:

#!/usr/bin/env sh

# filename: killsth.sh


# 如果 入參為空, 報錯

if [ -z "$1" ]
then
 echo "kill what??"
 echo "請輸入正確的格式,如: $0 test"
 exit -1
fi

# 變量 $$ 為該shell腳本執行時的 進程ID.

# 運行時, ps、grep、awk 的父進程ID為該腳本的進程ID

# ps 的 -f 參數會顯示父進程ID

# 故通過 grep -v $$ 可以過濾掉:此shell腳本運行的進程、ps 的進程、grep 的進程

ps -fu `whoami` | grep -w $1 | grep -v $$ | awk '{print "kill " $2}' | sh


上一篇:python 中的 cmd 模塊
下一篇:Python中的cmd模块2--cmdqueue