はじめに
たまにnpm start
でプロジェクトを実行しようとすると、下記の様なメッセージが表示されることがある。
ポートが被っているので他のポートを使って、実行しますか?
的なメッセージである。
上記の様に時々プロセスを実行したいのにポートが被っていて、つまずくことがあり、
該当のポートで起動しているプロセスを止める方法を共有致します。
コマンド
lsof -i :[ポート番号] -t | xargs kill
例
lsof -i :3000 -t | xargs kill
解説
lsof
プロセスが開いているファイルを表示するコマンド
オプション | 意味 |
---|---|
-i | 待機ポートを確認する(ネットワークソケットファイルを表示する) |
-t | プロセスIDを表示する |
xargs
標準入力やファイルからリストを読み込み、コマンドラインを作成して実行する
kill
実行中のプロセスを終了
lsof -i :3000 -t | xargs kill
3000ポートで起動しているプロセスを探し、
プロセスIDをxargs kill
に渡す。
xargsではlsof -i :3000 -t
からもらった、
プロセスIDを使って、killを実行する