Sponsored Content
Top Forums Shell Programming and Scripting Pgrep for processes which are not associated with a terminal in Ubuntu Post 302987506 by MadeInGermany on Sunday 11th of December 2016 05:15:23 AM
Old 12-11-2016
CRON jobs are never associated with a terminal, but there are processes without a terminal that are not CRON jobs.
Find the PID of the "cron" daemon
Code:
pgrep -o -x -u 0 cron

Now find the PIDs of its children
Code:
pgrep -P <pid_of_cron_daemon>

All in one
Code:
pgrep -P `pgrep -ox cron`


Last edited by MadeInGermany; 12-11-2016 at 06:28 AM.. Reason: added -u 0
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

concurrent terminal connections and processes

we've got solaris 5.6 installed in a ultra 5 box that serves as gateway server going to the main unix box. just like to find out how to determine the number of concurrent terminal connections and processes that the ultra 5 box can handle? and handling at present time? thanks in advance! (1 Reply)
Discussion started by: eddie_villarta
1 Replies

2. Programming

pgrep returns 256

Hi Everyone, I have a strange behaviour In my c program i use this line: int retval = system("pgrep encoder"); while i expect retval to contain 0,1,2,3 i get 256. did i do something wrong? thanks, Alex (2 Replies)
Discussion started by: alex889
2 Replies

3. UNIX for Dummies Questions & Answers

PGREP Arguments

I'm trying to figure out how to use pgrep to pull the arguments of a process. Given: root 308 1 0 00:00 ? 00:00:00 /bin/sh /some/random/path/somescript.sh -flag /another/path/blahI can get the pid (308) using this command: pgrep shHowever, what if I wanted to pull by "somescript.sh"... (4 Replies)
Discussion started by: mrwatkin
4 Replies

4. UNIX for Dummies Questions & Answers

I'm unable to run Keyed List commands(in ubuntu's terminal and Evolane Tcl Engine)

I'm trying to run these commands (keylset,keylget) but i keep getting a error message "invalid command name "keylset"". I've tried running it on both ubuntu's terminal and also Evolane Tcl Engine. Any idea what could be the problem? (1 Reply)
Discussion started by: abe171
1 Replies

5. Shell Programming and Scripting

Ssh and pgrep not working

I have setup SSH keys . Trying to grep to get PID of remote jvm's . this is what am doing ssh -q testuser1@myhost.com 'PID1=pgrep -fl testapp1|awk "{print $1}";PID2=pgrep -fl testapp2|awk "{print $1}" ' echo $PID1, $PID2 it throws error"sh: -fl: command not found" ---------- Post updated... (1 Reply)
Discussion started by: kondagadu
1 Replies

6. Homework & Coursework Questions

Display info about users (UID GID processes terminal)

I would like to get an opinion for my solution for this task and get feedback about better approach or mistakes I have made. 1. The problem statement, all variables and given/known data: The task is to create a script which prints information about users whose names are specified in the... (2 Replies)
Discussion started by: kornfan
2 Replies

7. Ubuntu

Error starting terminal in Ubuntu 14.04.3

I am unfamiliar with below error and how to fix it, it happens when I start the terminal in Ubuntu 14.04.3. I do not send any command only press crtl+alt+T. It seems to indicate that something is missing from PATH but I’m not really sure what. Thank you :). Command 'lesspipe' is... (24 Replies)
Discussion started by: cmccabe
24 Replies

8. Shell Programming and Scripting

Pgrep not showing desired output

I am searching for a process that should be up and running. Im using the following command ps -ef | grep elasticsearch to get elastic+ 1673 1 0 Jan29 ? 05:08:56 /bin/java -Xms4g -Xmx4g -Djava.awt.headless=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC... (1 Reply)
Discussion started by: Junaid Subhani
1 Replies

9. UNIX for Beginners Questions & Answers

Connection between terminal and processes

Hello! I've just started to read System V Interface Definition and came across this entry: "Background Process Group A background process group is any process group that is a member of a session which has established a connection with a controlling terminal that is not in the foreground process... (2 Replies)
Discussion started by: saeed13r
2 Replies

10. UNIX for Beginners Questions & Answers

Echo/kill pgrep

Hi folks. I'm wondering why the following doesn't work and hoe to fix it... I can: # pgrep foo 1234 I can: # echo | pgrep foo 1234 But I can't # kill | pgrep foo kill: usage: blah blah So why does echo pipe correctly but kill doesn't? (9 Replies)
Discussion started by: MuntyScrunt
9 Replies
PGREP(1)							   User Commands							  PGREP(1)

NAME
pgrep, pkill - look up or signal processes based on name and other attributes SYNOPSIS
pgrep [options] pattern pkill [options] pattern DESCRIPTION
pgrep looks through the currently running processes and lists the process IDs which match the selection criteria to stdout. All the crite- ria have to match. For example, $ pgrep -u root sshd will only list the processes called sshd AND owned by root. On the other hand, $ pgrep -u root,daemon will list the processes owned by root OR daemon. pkill will send the specified signal (by default SIGTERM) to each process instead of listing them on stdout. OPTIONS
-signal --signal signal Defines the signal to send to each matched process. Either the numeric or the symbolic signal name can be used. (pkill only.) -c, --count Suppress normal output; instead print a count of matching processes. When count does not match anything, e.g. returns zero, the command will return non-zero value. -d, --delimiter delimiter Sets the string used to delimit each process ID in the output (by default a newline). (pgrep only.) -f, --full The pattern is normally only matched against the process name. When -f is set, the full command line is used. -g, --pgroup pgrp,... Only match processes in the process group IDs listed. Process group 0 is translated into pgrep's or pkill's own process group. -G, --group gid,... Only match processes whose real group ID is listed. Either the numerical or symbolical value may be used. -l, --list-name List the process name as well as the process ID. (pgrep only.) -a, --list-full List the full command line as well as the process ID. (pgrep only.) -n, --newest Select only the newest (most recently started) of the matching processes. -o, --oldest Select only the oldest (least recently started) of the matching processes. -P, --parent ppid,... Only match processes whose parent process ID is listed. -s, --session sid,... Only match processes whose process session ID is listed. Session ID 0 is translated into pgrep's or pkill's own session ID. -t, --terminal term,... Only match processes whose controlling terminal is listed. The terminal name should be specified without the "/dev/" prefix. -u, --euid euid,... Only match processes whose effective user ID is listed. Either the numerical or symbolical value may be used. -U, --uid uid,... Only match processes whose real user ID is listed. Either the numerical or symbolical value may be used. -v, --inverse Negates the matching. This option is usually used in pgrep's context. In pkill's context the short option is disabled to avoid accidental usage of the option. -w, --lightweight Shows all thread ids instead of pids in pgrep's context. In pkill's context this option is disabled. -x, --exact Only match processes whose names (or command line if -f is specified) exactly match the pattern. -F, --pidfile file Read PID's from file. This option is perhaps more useful for pkill than pgrep. -L, --logpidfile Fail if pidfile (see -F) not locked. --ns pid Match processes that belong to the same namespaces. Required to run as root to match processes from other users. See --nslist for how to limit which namespaces to match. --nslist name,... Match only the provided namespaces. Available namespaces: ipc, mnt, net, pid, user,uts. -V, --version Display version information and exit. -h, --help Display help and exit. OPERANDS
pattern Specifies an Extended Regular Expression for matching against the process names or command lines. EXAMPLES
Example 1: Find the process ID of the named daemon: $ pgrep -u root named Example 2: Make syslog reread its configuration file: $ pkill -HUP syslogd Example 3: Give detailed information on all xterm processes: $ ps -fp $(pgrep -d, -x xterm) Example 4: Make all netscape processes run nicer: $ renice +4 $(pgrep netscape) EXIT STATUS
0 One or more processes matched the criteria. 1 No processes matched. 2 Syntax error in the command line. 3 Fatal error: out of memory etc. NOTES
The process name used for matching is limited to the 15 characters present in the output of /proc/pid/stat. Use the -f option to match against the complete command line, /proc/pid/cmdline. The running pgrep or pkill process will never report itself as a match. BUGS
The options -n and -o and -v can not be combined. Let me know if you need to do this. Defunct processes are reported. SEE ALSO
ps(1), regex(7), signal(7), killall(1), skill(1), kill(1), kill(2) STANDARDS
pkill and pgrep were introduced in Sun's Solaris 7. This implementation is fully compatible. AUTHOR
Kjetil Torgrim Homme <kjetilho@ifi.uio.no> REPORTING BUGS
Please send bug reports to <procps@freelists.org> procps-ng October 2012 PGREP(1)
All times are GMT -4. The time now is 05:18 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy