Linux / UNIX: Find out or determine if process pid is running

http://www.cyberciti.biz/faq/howto-display-process-pid-under-linux-unix/

How do I find out my process is running on a Unix-like operating systems? How do I get the pid number for particular process on a Linux operating systems using bash shell?

A PID is an acronym for process identification number on a Linux or Unix-like operating system. A PID is automatically assigned to each process when it is created. A process is nothing but running instance of a program and each process has a unique PID on a Unix-like system.
Tutorial details  
Difficulty Easy (rss)
Root privileges No
Requirements None
Estimated completion time 2m

The easiest way to find out if process is running is run ps aux command and grep process name. If you got output along with process name/pid, your process is running.

Task: Find out process pid

Simply use ps command as follows:
ps aux | grep {process-name}

For example find out if mysqld process (mysqld pid) is running or not:
$ ps aux | grep mysqld
Sample outputs:

mysql    28290  1.1  2.7 340496 56812 ?        Sl   Jul31 348:27 /usr/libexec/mysqld --defaults-file=/etc/my.cnf --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-locking --socket=/var/lib/mysql/mysql.sock

Find the process ID of a running program using pidof

pidof command finds the process id’s (pids) of the named programs. It prints those id’s on screen. This program is on some systems used in run level change scripts, especially when the system has a System-V like rc structure. In that case these scripts are located in /etc/rc?.d, where ? is the runlevel. If the system has a start-stop-daemon (8) program that should be used instead.
# pidof mysqld
Sample outputs:

28290

Find PID using pgrep command

The pgrep command searches the running system and shows the process IDs of all processes that match the given criteria. The syntax is:
pgrep {processNameHere}
pgrep firefox
pgrep httpd
pgrep nginx

Sample outputs:

4241
Tweet it Facebook it Google+ it PDF it Found an error/typo on this page?

{ 19 comments… add one }

  • surendra kumar  August 27, 2007, 8:14 am

    hay man you can use pgrep also know?
    why ps -aux | grep process name?
    u can use pgrep like this
    pgrep process name
    pgrep httpd
    pgrep named
    pgrep firefox
    etc
    if any special about your command just give me info related to it

  • Adrian B.  February 10, 2009, 9:27 am

    Thanks Surendra, damn good tips

  • Adrian B.  February 10, 2009, 9:28 am

    you can also use this :
    $>pkill -f cruisecontrol
    in a cruisecontrol process which runs under java. -f does a substring search of the process string.

  • lala  September 20, 2009, 7:33 pm

    man, u guys rock, trust me it helps so much, when my maya hangs.
    special thanks: adrian B, pkill -f maya: wow, toogood

  • Rakesh  October 2, 2009, 11:40 am

    Hi .

    I have a probleam . when i start mysql it is showing MySQL manager or server PID file could not be found! [FAILED] . Starting MySQL/etc/init.d/mysql: line 159: kill: (5984) – No such process .how to solve the probleam. if any one know plz help me

  • subramanya  April 23, 2010, 8:38 am

    Thank you very much for the info.. it works for me..

  • Aaron  October 20, 2010, 4:00 am

    i tried using kill(pid,0) to test whether the process is existent, need to include

    Aaron

  • mohsin  November 29, 2010, 8:19 am

    when i reconfigure (squid -k reconfigure) squid i got error.
    like this
    squid: ERROR: Could not send signal 1 to process 6471: (3) No such process
    how i can remove this error please help me.

    Thanks in advance

  • Pinoy  June 4, 2011, 5:12 pm

    hanks ive been searching the net on how to find the pid of a process and this post solve my problem. thank you

  • Mikkel  September 22, 2011, 9:02 pm

    Bear in mind that the command itself can show up in the results. For instance:

    mikkel@www ~ $ ps aux | grep ntp
    root     20417  0.0  0.0   4408  1316 ?        Ss   17:30   0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid
    mikkel   20429  0.0  0.0   2064   572 pts/0    S+   17:30   0:00 grep --colour=auto ntp

    If you only see the grep command listed, that means the named command is not running.

  • Amensan  November 6, 2011, 5:27 pm

    Hi,

    I still can’t see my pid number for my postfix services. can’t find that. Help me. Thanks.

    Using: Linux server 11.04

  • SALIM  November 15, 2011, 9:13 am

    why ? mark indicating ?? while each ps -ef |grep some process

  • kamal  March 14, 2012, 6:53 am

    Hii,
    im facing one problem with pgrep command
    I want to display the PID of process with greping on process name..im using this command for that:
    pgrep -lfu $UID | grep -i AddUser | grep -v grep | grep bash | tr -s ” ” | cut -d ” ” -f1
    but since the path of process AddUser is too long..the output of pgrep does not shows the fullname of process instead it crops the process name and displays only first 3 chars…Any idea to avoid cropping of process name

  • hari  April 3, 2012, 9:45 am

    thanku fr d infr…

  • mullai  June 1, 2012, 8:02 am

    hello.i want the command for taking login name as a command line argument in linux for shell program

  • Himal  February 6, 2013, 5:02 pm

    hello, What does ps – HI do? What is the meaning of this command?

  • oluc  May 2, 2013, 8:20 am

    The process could be running (it has a pid) but stopped (kill -STOP $pid) (it is not actually running).

  • devender shekhawat  September 27, 2014, 7:01 pm

    I have a process PID i want to check this PID is for which process & the process is running or not.please explain with example

  • Rabindra kumar  February 9, 2015, 4:28 am

    Hi All I want to know how many jobs are running on a particular server. So can anyone help me providing the command so that I could able to check how many jobs are running in the server and log status as well


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值