亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用bash和regex在一行中查找并終止進程

使用bash和regex在一行中查找并終止進程

LEATH 2019-07-25 10:52:15
使用bash和regex在一行中查找并終止進程我經常需要在編程期間殺死進程。我現在這樣做的方式是:[~]$ ps aux | grep 'python csp_build.py'user    5124  1.0  0.3 214588 13852 pts/4    Sl+  11:19   0:00 python csp_build.py user    5373  0.0  0.0   8096   960 pts/6    S+   11:20   0:00 grep python csp_build.py[~]$ kill 5124如何自動提取進程ID并在同一行中終止它?像這樣:[~]$ ps aux | grep 'python csp_build.py' | kill <regex that returns the pid>
查看完整描述

3 回答

?
慕俠2389804

TA貢獻1719條經驗 獲得超6個贊

一個班輪:

ps aux  |  grep -i csp_build  |  awk '{print $2}'  |  xargs sudo kill -9

  • 打印第2欄: awk '{print $2}'

  • sudo 是可選的

  • 運行kill -9 5124,kill -9 5373等等(殺-15更優美,但稍慢)


獎金:

我還有.bash_profile中定義的2個快捷方式函數(?/ .bash_profile用于osx,你必須看看哪些適用于你的* nix機器)。

  1. 關鍵字

    • 列出包含關鍵字的所有P rocesses

    • 使用如:p csp_buildp python

bash_profile代碼:

# FIND PROCESSfunction p(){
        ps aux | grep -i $1 | grep -v grep}
  1. ka 關鍵字

    • ?頑疾一個具有此關鍵字LL工藝

    • 使用如:ka csp_build,ka python

    • 可選的死亡水平如:ka csp_build 15ka python 9

bash_profile代碼:

# KILL ALLfunction ka(){

    cnt=$( p $1 | wc -l)  # total count of processes found
    klevel=${2:-15}       # kill level, defaults to 15 if argument 2 is empty

    echo -e "\nSearching for '$1' -- Found" $cnt "Running Processes .. "
    p $1

    echo -e '\nTerminating' $cnt 'processes .. '

    ps aux  |  grep -i $1 |  grep -v grep   | awk '{print $2}' | xargs sudo kill -klevel
    echo -e "Done!\n"

    echo "Running search again:"
    p "$1"
    echo -e "\n"}


查看完整回答
反對 回復 2019-07-25
  • 3 回答
  • 0 關注
  • 563 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號