shell command to find a process id and attach to it?

前端 未结 6 1745
感动是毒
感动是毒 2021-01-14 14:04

I want to attach to a running process using \'ffffd\', what I manually do is:

# ps -ax | grep PROCESS_NAME

Then I get a list and the pid, the

6条回答
  •  無奈伤痛
    2021-01-14 14:09

    There is an easy way to get rid of the grep process:

    ps -ax | grep PROCESS_NAME | grep -v ' grep '
    

    (as long as the process you're trying to find doesn't include the string " grep ").

    So something like this should work in a script (again, assuming there's only one copy running):

    pid=$(ps -ax | grep $1 | grep -v ' grep ' | awk '{print $1}')
    ffffd $1 ${pid}
    

    If you call your script ffffdproc, you can call it with:

    ffffdproc myprogramname
    

    Although I'd add some sanity checks such as detecting if there's zero or more than one process returned from ps and ensuring the user supplies an argument.

提交回复
热议问题