JavaScriptをがんばるブログ

React,OSS,ソフトウェア開発が中心のブログです👨‍💻

【linux】プロセスを殺す操作周り ~ps grep kill~

プロセスを殺すには

ps

コマンドからPID(プロセスID)を取得して、

kill -9 PID

を行う必要がありますが、
※「-9」は「Killシグナルによるプロセスの終了」のシグナルを送信している

psコマンドの結果から停止したいプロセスのPIDのみを抽出できないか?
調べたところ、以下のコマンドで行えました。(TweetDeckが停止させるプロセス)

ps -ef | grep TweetDeck | grep -v 'grep' | awk {'print $2'}

※psの"-e" はすべて (every) のプロセスを選択し、 "-f" は完全な (full) 出力フォーマットを選ぶ。(wikipediaより引用)

ps -ef | grep TweetDeck  

psコマンドの結果から文字列'TweetDeck'が含まれる行を抽出し、

| grep -v 'grep'

たった今実行したgrepコマンドを抽出結果から除外し、

| awk {'print $2'}

2列目の文字列のみを出力(2列目にPIDが表示されるため)
これで対象プロセスのPIDのみを表示させる事が出来ました。

※参考にさせて頂きました
LinuxでプロセスIDをgrepして引数に渡す方法 - tanamonの日記

尚上記のコマンドは冗長なもので、pgrep、pkillといった便利コマンドもあるようです。
限られたコマンドで工夫するもの楽しいですけどね。