summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2021-11-24 11:21:10 +0100
committerLuca Boccassi <luca.boccassi@gmail.com>2021-11-24 12:44:34 +0000
commit989db9b399fb69bd6b991180a1f2d801124fdbd7 (patch)
treebd9c7e71a76307274c6e07c83f798b11f4669e0b
parent91ee7c5ebda88efe112d432d63cb5216806c828a (diff)
downloadsystemd-989db9b399fb69bd6b991180a1f2d801124fdbd7.tar.gz
shell-completion: add journalctl --facility
Fixes #21484.
-rw-r--r--shell-completion/bash/journalctl6
-rw-r--r--shell-completion/zsh/_journalctl10
2 files changed, 14 insertions, 2 deletions
diff --git a/shell-completion/bash/journalctl b/shell-completion/bash/journalctl
index 84232e83c2..9a55c2d62d 100644
--- a/shell-completion/bash/journalctl
+++ b/shell-completion/bash/journalctl
@@ -32,6 +32,7 @@ __get_machines() {
}
__syslog_priorities=(emerg alert crit err warning notice info debug)
+__syslog_facilities=(kern user mail daemon auth syslog lpr news uucp cron authpriv ftp local0 local1 local2 local3 local4 local5 local6 local7)
_journalctl() {
local field_vals= cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]}
@@ -44,7 +45,7 @@ _journalctl() {
--show-cursor --dmesg -k --pager-end -e -r --reverse
--utc -x --catalog --no-full --force --dump-catalog
--flush --rotate --sync --no-hostname -N --fields'
- [ARG]='-b --boot -D --directory --file -F --field -t --identifier
+ [ARG]='-b --boot -D --directory --file -F --field -t --identifier --facility
-M --machine -o --output -u --unit --user-unit -p --priority
--root --case-sensitive'
[ARGUNKNOWN]='-c --cursor --interval -n --lines -S --since -U --until
@@ -81,6 +82,9 @@ _journalctl() {
--machine|-M)
comps=$( __get_machines )
;;
+ --facility)
+ comps=${__syslog_facilities[*]}
+ ;;
--priority|-p)
comps=${__syslog_priorities[*]}
compopt -o nosort
diff --git a/shell-completion/zsh/_journalctl b/shell-completion/zsh/_journalctl
index 90d7579cce..5dba1e7dfe 100644
--- a/shell-completion/zsh/_journalctl
+++ b/shell-completion/zsh/_journalctl
@@ -56,6 +56,13 @@ _journalctl_boots() {
"bootid:boot ids:compadd -a _bootid"
}
+(( $+functions[_journalctl_facilities] )) ||
+_journalctl_facilities() {
+ local -a _journalctl_facilities
+ _journalctl_facilities=(kern user mail daemon auth syslog lpr news uucp cron authpriv ftp local0 local1 local2 local3 local4 local5 local6 local7)
+ _describe 'possible values' _journalctl_facilities
+}
+
# Build arguments for "journalctl" to be used in completion.
# Use both --user and --system modes, they are not exclusive.
local -a _modes; _modes=(--user --system)
@@ -103,7 +110,8 @@ _arguments -s \
{-u+,--unit=}'[Show data only from the specified unit]:units:_journalctl_field_values _SYSTEMD_UNIT' \
'--user-unit=[Show data only from the specified user session unit]:units:_journalctl_field_values USER_UNIT' \
{-p+,--priority=}'[Show only messages within the specified priority range]:priority:_journalctl_field_values PRIORITY' \
- {-t+,--identifier=}'[Show only messages with the specified syslog identifier]:identifier:_journalctl_field_values SYSLOG_IDENTIFIER' \
+ '--facility=[Filter messages by facility]:facility:_journalctl_facilities' \
+ {-t+,--identifier=}'[Filter messages by syslog identifier]:identifier:_journalctl_field_values SYSLOG_IDENTIFIER' \
{-c+,--cursor=}'[Start showing entries from the specified cursor]:cursors:_journalctl_field_values __CURSORS' \
'--cursor-file=[Show entries using cursor store in file]:file:_files' \
'--after-cursor=[Start showing entries from after the specified cursor]:cursors:_journalctl_field_values __CURSORS' \