Job control (Unix): Difference between revisions

Content deleted Content added
Move interesting info to the (overly short) intro
Move more contextual, interesting info to the intro
Line 4:
 
[[POSIX]] specifies job control commands {{endash}} modeled after the Korn shell job control commands.<ref>{{man|cu|bg|SUS}}; {{man|cu|fg|SUS}}.</ref>. Command {{code|bg}} resumes the foreground job paused via Ctrl-Z as a background task. Command {{code|fg}} caused the background task to run in the foreground. Command [[wait (command)|<code>wait</code>]] pauses the interactive session until specified background jobs (of the active shell) complete. Specifying no jobs selects all jobs.<ref>{{cite web | last=Kerrisk| first=Michael |date=Feb 2, 2025 |title=wait(1p) — Linux manual page |website=man7.org |url=https://www.man7.org/linux/man-pages/man1/wait.1p.html |publisher= |access-date=May 13, 2025}} </ref>
 
Job control was first implemented in the [[C shell]] by Jim Kulp,<ref>
Foreword by [[Bill Joy]] in {{cite book
| first = Gail
| last = Anderson
| author2 = Paul Anderson
| year = 1986
| title = The UNIX C Shell Field Guide
| page = xvii
| publisher = Prentice-Hall
| isbn = 0-13-937468-X
| url-access = registration
| url = https://archive.org/details/unixcshellfieldg00ande
}}
</ref> then at [[IIASA]] in Austria, making use of features of the 4.1[[BSD]] kernel.
The [[KornShell]], developed at [[Bell Labs]], adopted it and it was later incorporated into the SVR4 version of the [[Bourne shell]], and exists in most modern Unix shells.
 
==Overview==
Line 25 ⟶ 41:
 
Job control and job IDs are typically only used in interactive use, where they simplify referring to process groups; in scripting PGIDs are used instead, as they are more precise and robust, and indeed job control is disabled by default in bash scripts.
 
==History==
Job control was first implemented in the [[C shell]] by Jim Kulp,<ref>
Foreword by [[Bill Joy]] in {{cite book
| first = Gail
| last = Anderson
| author2 = Paul Anderson
| year = 1986
| title = The UNIX C Shell Field Guide
| page = xvii
| publisher = Prentice-Hall
| isbn = 0-13-937468-X
| url-access = registration
| url = https://archive.org/details/unixcshellfieldg00ande
}}
</ref> then at [[IIASA]] in Austria, making use of features of the 4.1[[BSD]] kernel.
The [[KornShell]], developed at [[Bell Labs]], adopted it and it was later incorporated into the SVR4 version of the [[Bourne shell]], and exists in most modern Unix shells.
 
==Implementation==