Ruby on RailsやSinatraで使われているRackですが、自分でRackアプリケーションやミドルウェアを作ることもあるかと思います。
Rackをデーモン化したり(rackup時にDをオプションとして追加)、間違ってrackupしたコンソールを閉じてしまったときにRackのプロセスをkillしたいことがあります。
毎回psコマンドを使って調べるのは面倒ですし、間違って他のプロセスをkillしてしまう恐れもあります。
確実にRackのプロセスを特定できるようにプロセスID(pid)を特定しておきましょう。
RackではプロセスIDを保存しておくオプションがついています。
rackup -P tmp/rack.pid
P(大文字)オプションをつけ、プロセスIDを保存するファイルを指定します。(小文字のpだとポートの指定のオプションです)
オプションでPをつけると指定したファイルにプロセスIDが保存されるようになります。
3014
こんな感じです。
あとはいつも通り以下のコマンドでRackのプロセスをkillすれば、正しいプロセスを止めることができます。
kill -9 `cat tmp/rack.pid`