silikonfax.blogg.se

Ubuntu get process cmd c
Ubuntu get process cmd c








ubuntu get process cmd c

ubuntu get process cmd c

We can change this by telling it to exit if it finds something and throw a 1 if it doesn't: ps aux | awk '$12="abc.sh" '

#Ubuntu get process cmd c code#

grep will exit with status code 1 (technical fail, triggers ||) if nothing is found but awk will always exit code 0. If you want to control the output or chain on with Bash's & and || operators, you can but you'll need to be a little more clever.

ubuntu get process cmd c

", $11 will be sh and $12 will be abc.sh. Fields $11+ are the command column(s) so if the command is "sh abc.sh. ps aux | awk '$12="abc.sh"'Īwk splits the lines into fields based on whitespace (by default). I would turn to awk for a little panache. You can filter that out but I find all that a little perverse. In your example, you're searching for "abc" but it's pulling back the instance of grep (that's looking for "abc"). My problem with grep is that it's a whole-line parser. Replacing /path/to/ with the location of the abc.sh file and then run abc.sh using /path/to/abc.shĪgain replacing /path/to/ with the location of the abc.sh file. So that the shell will know what application to use to run the script(sh in this case, change it to #!/bin/bash for bash) and then provide executable permissions to the process using: chmod +x /path/to/abc.sh However, if you do want your process to be listed as abc.sh, then you should have the first line of the script you are running as: #!/bin/sh (This will again list your process as sh). You could as well run the top command to check if the process is running or sleeping and the amount of CPU, RAM it is consuming. Z defunct ("zombie") process, terminated but not reaped by its parent W paging (not valid since the 2.6.xx kernel) T stopped, either by a job control signal or because it is being traced S interruptible sleep (waiting for an event to complete) The different process states can be found in the man page for ps: D uninterruptible sleep (usually IO) If it is something other than that, it is not running at the instance you fired the command to check the running processes. You should note that the process will be "running" when the output of ps aux has its STAT as R. This may also return you other process that are running having the string sh anywhere in their output of ps aux. So, the correct way you should have used it is as: ps aux | grep sh Hence, ps aux will not contain the process abc.sh because of which grep could not yield any result. However, in your case, since you ran the process using sh abc.sh, sh is the application(shell) that is running and not abc.sh. Every process will be listed in the output of ps aux whether running, sleeping, zombie or stopped.










Ubuntu get process cmd c