web-dev-qa-db-ja.com

BASHを使用して、どのようにしてTCP port 16969?

ポートTCP 16969を使用するアプリケーションが1つあります。これは、ソフトウェアカーネルを即座に再起動する必要がある場合があります。ただし、起動が速すぎると、Exception in thread "main" Java.net.BindException: Address already in useでロックされます。

だから言い訳なしに、16969で実行中またはリッスンしているポートを強制終了できるBASHスクリプトをトリガーしたいのですが、どうすればいいですか?

$ lsof -w -n -i tcp:16969 # this gives me a list of 50 lines but how can i tell apply kill to all on this port?
13
user285594

私はそう思います:

lsof -i tcp:22 | grep LISTEN | awk '{print $2}' | xargs kill

トリックを行う必要があります。

実行するコマンドを再確認する前に、次のようにechoの前にkillを追加します。

lsof -i tcp:22 | grep LISTEN | awk '{print $2}' | xargs echo kill

次に、通常は強制終了するPIDをリストします。

16
James C

Tcpkillを使用してみましたか?

例:

tcpkill -i eth0 port 21
17
Chaos

フューザー-k 16969/tcp

そのポートを解放できます。これは、ポートを閉じるために使用できる便利なコマンドです。どちらかです。よろしく

14
Xander

NetbeansでJBossを使用すると、この問題がよく発生します...

私の解決策:

端末タイプでは:

 Sudo netstat -lnp | grep 8080  

次に、次のように表示されます。

 tcp6       0      0 :::8080       :::*        LISTEN      1722/Java

次に使用します:

 kill 1722  //replace 1722 by the PID you found.

お役に立てれば幸いです。

4
alain.janinm