天天看點

Linux環境下批量Kill多個程序

ps -ef|grep LOCAL=NO|grep -v grep|cut -c 9-15|xargs kill -9
           

解析:

  • 管道符“|”用來隔開兩個指令,管道符左邊指令的輸出會作為管道符右邊指令的輸入;
  • “ps - ef”是Red Hat 裡檢視所有程序的指令。這時檢索出的程序将作為下一條指令“grep LOCAL=NO”的輸入;
  • “grep LOCAL=NO”的輸出結果是,所有含有關鍵字“LOCAL=NO”的程序,這是Oracle資料庫中遠端連接配接程序的共同特點;
  • “grep -v grep”是在列出的程序中去除含有關鍵字“grep”的程序;
  • “cut -c 9-15”是截取輸入行的第9個字元到第15個字元,而這正好是程序号PID;
  • “xargs kill -9”中的xargs指令是用來把前面指令的輸出結果(PID)作為“kill -9”指令的參數,并執行該指令;
  • “kill -9”會強行殺掉指定程序,這樣就成功清除了oracle的所有遠端連接配接程序。其它類似的任務,隻需要修改“grep LOCAL=NO”中的關鍵字部分就可以了;