setpgid(2) System Calls Manual setpgid(2) <?><?><?><?><?><?><?><?><?><?><?><?> setpgid, getpgid, setpgrp, getpgrp - <?><?><?><?><?><?><?><?><?><?><?><?><?>/<?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> Standard C library (libc, -lc) <?><?><?><?><?> #include <unistd.h> int setpgid(pid_t pid, pid_t pgid); pid_t getpgid(pid_t pid); pid_t getpgrp(void); /* POSIX.1 version */ [[deprecated]] pid_t getpgrp(pid_t pid); /* BSD version */ int setpgrp(void); /* System V version */ [[deprecated]] int setpgrp(pid_t pid, pid_t pgid); /* BSD version */ <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?> glibc (<?><?>. feature_test_macros(7)): getpgid(): _XOPEN_SOURCE >= 500 || /* <?><?><?><?><?><?><?> <?> glibc 2.12: */ _POSIX_C_SOURCE >= 200809L setpgrp() (POSIX.1): _XOPEN_SOURCE >= 500 || /* <?><?><?><?><?><?><?> <?> glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _SVID_SOURCE setpgrp() (BSD), getpgrp() (BSD): [<?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?> <?><?><?><?><?><?><?> glibc <?><?> 2.19] _BSD_SOURCE && ! (_POSIX_SOURCE || _POSIX_C_SOURCE || _XOPEN_SOURCE || _GNU_SOURCE || _SVID_SOURCE) <?><?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?> Linux <?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> (PGID). <?><?><?><?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> POSIX.1: getpgrp(void) -- <?><?><?> <?><?><?><?><?><?><?><?><?> PGID <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>; setpgid() -- <?><?><?> <?><?><?><?><?><?><?><?><?> PGID <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. <?><?><?><?><?> setpgid() <?><?><?><?><?><?><?><?><?><?><?><?><?> PGID <?> <?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?><?><?><?><?><?><?><?> pid <?><?><?><?><?><?> pgid. <?><?><?><?> <?><?><?><?><?><?><?><?> pid <?><?><?><?><?> 0, <?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. <?><?><?><?> <?><?><?><?><?><?><?><?> pgid <?><?><?><?><?> 0, <?><?> PGID <?><?><?><?><?><?><?><?>, <?><?><?><?><?><?><?><?><?><?> <?> pid, <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. <?><?><?><?> setpgid() <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?> <?><?><?><?><?> <?><?><?><?><?><?> <?> <?><?><?><?><?><?> (<?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?>), <?><?> <?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> (<?><?>. setsid(2) <?> credentials(7)). <?> <?><?><?><?> <?><?><?><?><?><?> <?> pgid <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?>, <?> <?><?><?><?><?><?><?> <?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. <?> <?><?><?><?><?><?> POSIX.1 <?><?><?><?><?> getpgrp() <?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> PGID <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. <?><?><?><?><?> getpgid() <?><?><?><?><?><?><?><?><?><?> PGID <?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?> pid. <?><?><?><?> <?><?><?><?><?><?><?><?> pid <?><?><?><?><?> <?><?><?><?>, <?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> (<?><?><?><?><?><?><?><?><?> PGID <?><?><?><?><?><?><?><?>, <?><?><?><?><?><?><?><?><?> <?><?> <?><?><?><?><?><?><?><?><?><?><?>, <?><?><?><?><?><?><?><?><?> <?><?><?><?><?>, <?> <?><?><?> <?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?> POSIX.1 getpgrp()). <?> <?><?><?><?><?><?> System V <?><?><?><?><?> setpgrp() <?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> setpgid(0, 0). <?> <?><?><?><?><?><?> BSD <?><?><?><?><?> setpgrp() <?> <?><?><?><?><?><?><?><?><?><?><?> pid <?> pgid <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>, <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> setpgid(pid, pgid) <?><?><?><?><?><?><?> <?> glibc 2.19, BSD-<?><?><?><?><?><?><?> setpgrp() <?><?><?><?> <?><?><?><?><?><?><?> <?><?> <unistd.h>; <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?> <?><?><?><?><?><?><?><?> <?><?> <?><?><?><?><?> setpgid(), <?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?>. <?> <?><?><?><?><?><?> BSD <?><?><?><?><?> getpgrp() <?> <?><?><?><?><?><?><?><?><?><?> pid <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>, <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> getpgid(pid) <?><?><?><?><?><?><?> <?> glibc 2.19, BSD-<?><?><?><?><?><?><?> getpgrp() <?><?><?><?> <?><?><?><?><?><?><?> <?><?> <unistd.h>; <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?> <?><?><?><?><?><?><?><?> <?><?> <?><?><?><?><?> POSIX.1 getpgrp(), <?><?><?><?><?><?><?> <?><?> <?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> (<?><?><?><?> <?><?><?><?><?> <?><?><?><?><?><?><?><?> PGID <?><?><?><?><?><?><?><?><?><?><?>), <?><?><?> <?><?> <?><?><?><?><?> getpgid(), <?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?>. <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> On success, setpgid() and setpgrp() return zero. On error, -1 is returned, and errno is set to indicate the error. <?><?><?><?><?> getpgrp() (POSIX.1) <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> PGID <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. getpgid(), and the BSD-specific getpgrp() return a process group on success. On error, -1 is returned, and errno is set to indicate the error. <?><?><?><?><?><?> EACCES <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?> <?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>, <?><?> <?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?> execve(2) (setpgid(), setpgrp()). EINVAL <?><?><?><?><?><?><?><?> pgid <?><?><?><?><?><?> 0 (setpgid(), setpgrp()). EPERM <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?> <?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>, <?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> (setpgid(), setpgrp()). EPERM <?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?> <?><?><?><?><?><?><?><?><?><?>. (setpgid(), setpgrp()). ESRCH <?><?><?> getpgid(): <?><?><?> <?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?><?> pid. <?><?><?> setpgid(): <?><?><?><?><?><?><?><?> pid <?><?> <?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. <?><?><?><?><?><?><?><?><?> getpgid() setpgid() getpgrp() (<?><?><?> <?><?><?><?><?><?><?><?><?><?>) setpgrp() (<?><?><?> <?><?><?><?><?><?><?><?><?><?>) POSIX.1-2008 (but see HISTORY). setpgrp() (2 <?><?><?><?><?><?><?><?><?>) getpgrp() (1 <?><?><?><?><?><?><?><?>) <?><?><?><?><?><?><?><?><?><?><?>. <?><?><?><?><?><?><?> getpgid() setpgid() getpgrp() (<?><?><?> <?><?><?><?><?><?><?><?><?><?>) POSIX.1-2001. setpgrp() (<?><?><?> <?><?><?><?><?><?><?><?><?><?>) POSIX.1-2001. POSIX.1-2008 <?><?><?><?><?><?><?><?> <?><?><?> <?><?><?> <?><?><?><?><?><?><?><?><?><?>. setpgrp() (2 <?><?><?><?><?><?><?><?><?>) getpgrp() (1 <?><?><?><?><?><?><?><?>) 4.2BSD. <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?>, <?><?><?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?> fork(2), <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. <?><?><?><?><?><?><?><?> PGID <?><?><?><?><?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?> execve(2). <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?> <?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?>, <?> <?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> (<?><?><?><?><?><?><?><?> credentials(7)). <?><?><?><?><?> <?><?><?><?><?> <?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>. <?> <?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?> (<?> <?><?><?><?><?><?> <?><?><?><?>) <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?> <?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> (foreground process group) <?><?><?><?><?><?><?><?><?>; <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?> <?><?><?><?><?><?>. <?><?><?><?> <?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?> (<?><?><?><?><?><?><?><?>, <?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?><?><?><?><?> SIGINT), <?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> (<?><?><?><?><?><?><?><?> <?> termios(3) <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?>, <?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?>). <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?> read(2) <?><?><?> <?><?><?><?><?><?><?><?><?>; <?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> read(2) <?><?><?> <?><?><?><?><?><?><?><?><?>, <?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> SIGTTIN, <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?> <?><?><?><?><?><?><?><?><?><?>. <?><?><?><?><?><?><?> tcgetpgrp(3) <?> tcsetpgrp(3) <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?><?>/<?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?>. <?><?><?><?><?><?> setpgid() <?> getpgrp() <?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?>, <?><?><?><?><?><?><?><?> bash(1), <?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?> <?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?>. <?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?> <?> <?><?><?><?> <?><?><?><?><?> <?><?> <?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?>, <?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> SIGHUP <?> <?><?><?><?><?><?><?><?><?><?><?> SIGCONT. <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?>, <?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?> (<?><?>. <?><?><?><?><?> credentials(7)). <?><?><?><?><?><?><?><?> <?><?><?><?><?> getuid(2), setsid(2), tcgetpgrp(3), tcsetpgrp(3), termios(3), credentials(7) <?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?>(<?>) Alexander Golubev <fatzer2@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Hotellook, Nikita <zxcvbnm3230@mail.ru>, Spiros Georgaras <sng@hellug.gr>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, <?><?><?><?> <?><?><?><?><?><?> <pavia00@gmail.com> <?> Kirill Rekhov <krekhov.dev@gmail.com> <?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?>; <?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?> GNU (GNU General Public License - GPL, <https://www.gnu.org/licenses/gpl-3.0.html> <?><?><?><?><?><?> 3 <?><?><?> <?><?><?><?><?> <?><?><?><?><?><?><?>) <?> <?><?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?>, <?><?> <?><?><?> <?><?><?><?><?>-<?><?><?><?> <?><?><?><?><?><?><?><?>. <?><?><?><?> <?><?> <?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?>-<?><?><?><?> <?><?><?><?><?><?> <?> <?><?><?><?><?><?><?><?> <?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?>, <?><?><?><?><?><?><?><?><?><?>, <?><?><?><?><?><?><?><?> <?><?> <?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?>(<?><?>) <?><?> <?><?><?>(<?><?>) <?><?><?><?><?><?>(<?><?>) <?><?><?><?><?><?><?><?><?><?><?> <?><?><?><?><?> <?><?><?> <?><?> <?><?><?><?><?><?> <?><?><?><?><?><?> <?><?><?><?><?><?><?><?> <?><?><?><?><?><?><?> <?><?><?><?><?><?><?><?><?><?><?><?> <<debian-l10n-russian@lists.debian.org>>. Linux man-pages 6.12 23 <?><?><?><?> 2024 <?>. setpgid(2)