KILLALL - Kill by name
killall firefox
killall -9 firefox
killall -u username process-name
killall -i nginx
killall -v apache2
Signals
killall process-name
killall -9 process-name
killall -KILL process-name
killall -HUP nginx
killall -STOP process-name
killall -CONT process-name
Common signals
SIGTERM (15) - Graceful shutdown (default)
SIGKILL (9) - Force kill (cannot be caught)
SIGHUP (1) - Reload configuration
SIGINT (2) - Interrupt (Ctrl+C)
SIGSTOP (19) - Pause process
SIGCONT (18) - Resume process
PKILL - Kill by pattern
pkill firefox
pkill -9 firefox
pkill ^ssh
pkill 'python.*script'
pkill -u username
pkill -g groupname
pkill -t pts/0
Advanced filtering
pkill -P 1234
pkill -g 5678
pkill -n firefox
pkill -o firefox
pkill -x firefox
pkill -i FIREFOX
List before killing (pgrep)
pgrep firefox
pgrep -l firefox
pgrep -a firefox
pgrep -c firefox
pkill firefox
KILLALL vs PKILL
killall firefox
pkill fire
killall python
pkill -f "python script.py"
Common use cases
Restart service
killall -HUP nginx
pkill -HUP nginx
Kill zombie processes
ps aux | grep Z
pkill -P parent_pid
Kill all user sessions
killall -u username
pkill -u username
killall -u username bash
Emergency kill
killall -9 firefox
pkill -9 chrome
Kill by full command
pkill -f "python /path/to/script.py"
pkill -f "node app.js"
Safe killing script
#!/bin/bash
PROCESS=$1
if [ -z "$PROCESS" ]; then
echo "Usage: $0 <process-name>"
exit 1
fi
echo "Processes to be killed:"
pgrep -a "$PROCESS"
read -p "Kill these processes? (y/n) " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
pkill "$PROCESS"
echo "Processes killed"
else
echo "Cancelled"
fi
Troubleshooting
Nothing killed
pgrep process-name
ps aux | grep process-name
sudo killall process-name
ps aux | grep process-name
"No such process"
pgrep -l process
Permission denied
sudo killall process-name
sudo pkill -u username
Best practices
killall process-name
sleep 2
killall -9 process-name
pgrep -a pattern
pkill -f "full/path/to/command"
pkill command
killall -HUP nginx
killall nginx
killall -9 nginx
pgrep -a pattern > /tmp/killed_processes.log
pkill pattern
Alternatives
kill PID
kill -9 PID
kill $(pgrep firefox)
pgrep firefox | xargs kill
systemctl stop service-name
Quick reference
killall process-name
pkill pattern
killall -u username process
pkill -u username
killall -i process-name
pgrep -a pattern
killall -9 process-name
pkill -9 pattern
killall -HUP daemon-name
pkill -HUP daemon-name