If you ever found yourself googling how to find active processes in linux, or process with the highest CPU, save this post as a reference, and save code into the script.
COMMANDS: ps aux #=> list processes grep 'firefox' #=> show firefox processes awk *opts #=> choose what we want to print
We will use this simple commands, so let's make a script for this:
#!/usr/bin/env bash # Define 'help' banner function print_help() { echo -e "--------------------------------------------------------------" echo -e " - procfind will print the highest CPU% processes" echo -e " - procfind firefox - will print firefox processes" echo -e "--------------------------------------------------------------" } # max number of processes to show processes="10" if [ "$1" == "-h" ] || [ "$1" == "--help" ]; then print_help exit else # If first argument is passed as string, search processes for that arg echo "CPU |PID |MEM |START |COMMAND" ps aux | grep "$1"| awk '{print $3,$2,$4,$9,$11}' | sort -rn | head -n "$processes" fi exit
Save script as you want (procfind) and give it executable permissions with sudo chmod +x procfind
. No .sh
at the end because we defined our environment #!/usr/bin/env bash
.
Now if we run ./procfind -h
, we will get:
------------------------------------------------------------ - ./procfind will print the highest CPU% processes - ./procfind firefox - will print firefox processes ------------------------------------------------------------
If we run ./procfind firefox
:
CPU |PID |MEM |START |COMMAND 20.2 24281 10.1 16:04 /home/USERNAME/PATH/tor-browser_en-USA/Browser/firefox.real 11.8 24209 12.5 16:03 ./firefox.real 1.9 24325 9.8 16:04 /home/USERNAME/PATH/tor-browser_en-USA/Browser/firefox.real 1.4 24361 5.2 16:04 /home/USERNAME/PATH/tor-browser_en-USA/Browser/firefox.real 0.7 31245 6.0 18:25 /home/USERNAME/PATH/tor-browser_en-USA/Browser/firefox.real 0.0 376 0.0 19:21 grep
Top comments (0)