How to kill a process on a port on ubuntu

Tampa picture Tampa · Feb 19, 2012 · Viewed 877.9k times · Source

I am trying to kill a process in the command line for a specific port in ubuntu.

If I run this command I get the port:

sudo lsof -t -i:9001

so...now I want to run:

sudo kill 'sudo lsof -t -i:9001'

I get this error message:

ERROR: garbage process ID "lsof -t -i:9001".
Usage:
  kill pid ...              Send SIGTERM to every process listed.
  kill signal pid ...       Send a signal to every process listed.
  kill -s signal pid ...    Send a signal to every process listed.
  kill -l                   List all signal names.
  kill -L                   List all signal names in a nice table.
  kill -l signal            Convert between signal numbers and names.

I tried sudo kill 'lsof -t -i:9001' as well

Answer

zellio picture zellio · Feb 19, 2012

You want to use backtick not regular tick:

sudo kill -9 `sudo lsof -t -i:9001`

If that doesn't work you could also use $() for command interpolation:

sudo kill -9 $(sudo lsof -t -i:9001)