title: How to kill all processes of a Python program?
body: <p>I am running a Python program service_host.py, which started multiple processes. And when I use <code>ps -ef | grep python</code></p>
  <p>to check the pids, it shows a lot:</p>
  <pre><code>congmin  26968 22897  0 Jun20 ?        00:00:00 python service_host.py
  congmin  26969 22897  0 Jun20 ?        00:00:00 python service_host.py
  congmin  26970 22897  0 Jun20 ?        00:00:00 python service_host.py
  congmin  26971 22897  0 Jun20 ?        00:00:00 python service_host.py
  congmin  26972 22897  0 Jun20 ?        00:00:00 python service_host.py
  congmin  26973 22897  0 Jun20 ?        00:00:00 python service_host.py
  congmin  26974 22897  0 Jun20 ?        00:00:00 python service_host.py
  congmin  26975 22897  0 Jun20 ?        00:00:00 python service_host.py
  </code></pre>
  <p>What's the best way to kill all these processes at once? I am on Linux and don't want to kill one by one through the process ID. Is there a way to kill them by the Python name 'service_host.py'? I tried this but it didn't kill at all:</p>
  <pre><code>import psutil
  
  PROCNAME = &quot;service_host.py&quot;
  
  for proc in psutil.process_iter():
      # check whether the process name matches
      if proc.name() == PROCNAME:
          proc.kill()
  </code></pre>
  <p>Is there a terminal command that can do this job easily?</p>