Ich mache oft zB
sudo netstat -lpn |grep :8088
Ausgabe anzeigen
tcp6 0 0 :::8088 :::* LISTEN 11189/java
und dann
sudo kill -kill 11189
Ich hätte gerne einen bequemeren Befehl, der genau so killatport 8088
die TCP-Portnummer als Variable verwendet und den ich als Alias für eine Pipeline erstellen kann, die das tut, was ich will, aber wie erhalte ich die PID aus der Ausgabe und der Pipe es zum töten Befehl? Ich nehme an, ich kann awk verwenden, um die PID von der Ausgabe von netstat zu erhalten, aber wie kann ich eine genaue Portübereinstimmung sicherstellen, damit die Eingabe 80 nicht mit 8080 übereinstimmt, und ebenso? Soll ich es stattdessen zu einem C-Programm machen? Oder gibt es schon so ein kleines Dienstprogramm?
mvn jetty:stop
könnte fehlschlagen, wenn die Instanz dies getan hat OutOfMemoryError
. Wenn ich Java-Servlets neu starte, kommt es vor, dass der Port selbst bei einem regulären Stopp wie z mvn jetty:stop
. Manchmal kann der Prozess OutOfMemoryError
den TCP-Port bei einem regelmäßigen Herunterfahren wie z mvn jetty:stop
.
mvn jetty:stop
ist nicht das gleiche SIGTERM wie das Senden und der Jvm sollte noch einmal zu verarbeiten SIGTERM der Lage sein , obwohl seine Anwendung (en) von mem ist aus.