diff options
| author | Daan De Meyer <daan.j.demeyer@gmail.com> | 2023-08-20 11:42:51 +0200 |
|---|---|---|
| committer | Daan De Meyer <daan.j.demeyer@gmail.com> | 2023-08-31 10:13:30 +0200 |
| commit | f092076fecc7ada2911df1b34f75091573ac08a8 (patch) | |
| tree | 6396d01ab3b0ab94449d34af718d19df2462b20b /bash-completion/setpgid | |
| parent | 2b99ee2526ae61be761b0e31c50e106dbec5e9e4 (diff) | |
| download | util-linux-f092076fecc7ada2911df1b34f75091573ac08a8.tar.gz | |
Add new setpgid utility
This program allows running a command in a new process group and
optionally makes the new process group the foreground process group
of the ctty.
This is useful when running programs through wrappers programs (think
bubblewrap, ...) and wanting to make sure that SIGINT is only sent to
the innermost process. This is possible by putting the innermost process
in a new process group and making that process group the foreground process
group of the controlling terminal.
By adding a separate utility to util-linux, we can apply this to any
program even if the program itself doesn't implement this functionality.
Diffstat (limited to 'bash-completion/setpgid')
| -rw-r--r-- | bash-completion/setpgid | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/bash-completion/setpgid b/bash-completion/setpgid new file mode 100644 index 0000000000..5ad9be564f --- /dev/null +++ b/bash-completion/setpgid @@ -0,0 +1,23 @@ +_setpgid_module() +{ + local cur prev OPTS + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + case $prev in + '-h'|'--help'|'-V'|'--version') + return 0 + ;; + esac + case $cur in + -*) + OPTS="--foreground --help --version" + COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) + return 0 + ;; + esac + compopt -o bashdefault + COMPREPLY=( $(compgen -c -- $cur) ) + return 0 +} +complete -F _setpgid_module setpgid |
