こたつとみかんとプログラミング

33才実務未経験ですがウェブエンジニアにジョブチェンジするために勉強したことをアップするためのブログです。

いつも rails server を止める方法を忘れる

rails server を立ち上げて、そのまま terminal 上で control + c で止めることができるけれど、私はたびたびこの作業を忘れて開発を終了してしまい、別の環境にアクセスするときにあああ前のサーバーが立ち上がったままだ! control + c が使えない!どうしようとあたふたする。そして方法をググっては忘れる。
たぶん、毎回忘れる原因は、そのコマンドの意味がわかってないまま使っているからだと思うので、今回立ち戻りできるように、また理解できるようにコマンドの意味を調べてみる。

起動中のサーバー一覧を表示する方法2選

ps コマンドを使う方法

$ ps aux | grep rails
ps コマンドについて

「process status」の略。Linux上で現在動作しているプロセスを一覧で表示するコマンド。

auxオプション

psコマンドのオプションで、a, u, x オプションをつなげたもの
すべての種類のプロセスの知り得るだけの情報がすべて網羅される。
ちなみに、、、

  • aオプション:端末操作のプロセスを表示する
  • uオプション:CPUやメモリの使用率なども表示する
  • xオプション:現在、実行しているプロセスを表示する

grep オプション

grepはファイル中の文字列を検索するコマンド
「global regular expression print(ファイル全体から/正規表現に一致する行を/表示する)」の略。

以上から、ps aux | grep rails は起動しているプロセスからrailsを検索して表示するコマンドとなる。

lsof コマンドを使った方法

lsof -i :3000
lsof コマンドについて

「list open files」の略。つまり、オープンしているファイルを一覧表示するコマンド。
オプション指定せずにこれだけだとめちゃ出てくる可能性あるので注意。

  • iオプション:ネットワークソケットを対象にする。

以上から、オプションで -i :3000 と指定してあげることでローカルサーバーの処理を呼び出すことができる。

サーバーを止める方法

起動中のサーバーのプロセス番号(PID)がわかったら、あとはそれを kill してあげることで止めることができる。

kill -9 (PID番号)
kill コマンドについて

起動中のプロセスを止めるコマンド

  • 9オプション:プロセスの強制終了命令


起動中のプロセスを検索=>止めたいサーバーの PID を kill でサーバーを止めることができる。