#!/bin/bash # Check if an argument is given if [ $# -eq 0 ]; then echo "Usage: murder [process name or port]" exit 1 fi # Get the input parameter ARGUMENT=$1 # Check if the argument is numeric if [[ $ARGUMENT =~ ^[0-9]+$ ]]; then echo "Killing processes listening on port $ARGUMENT" lsof -t -i:$ARGUMENT | xargs kill else # Process name was given instead of a port number echo "Killing processes with name $ARGUMENT" for PID in $(ps aux | grep $ARGUMENT | grep -v grep | awk '{print $2}'); do echo "Killing process $PID" sudo kill -9 $PID done fi