mirror of
https://github.com/systemd/systemd.git
synced 2024-10-30 23:21:22 +03:00
c1072f6473
Since there's no file extension, emacs and other editors do not know that this is supposed to be in shell syntax.
72 lines
3.0 KiB
Bash
72 lines
3.0 KiB
Bash
#compdef busctl -*- shell-script -*-
|
|
# SPDX-License-Identifier: LGPL-2.1+
|
|
|
|
# busctl(1) completion -*- shell-script -*-
|
|
#
|
|
# This file is part of systemd.
|
|
#
|
|
# systemd is free software; you can redistribute it and/or modify it
|
|
# under the terms of the GNU Lesser General Public License as published by
|
|
# the Free Software Foundation; either version 2.1 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# systemd is distributed in the hope that it will be useful, but
|
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
# General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU Lesser General Public License
|
|
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
(( $+functions[_busctl_commands] )) || _busctl_commands()
|
|
{
|
|
local -a _busctl_cmds
|
|
_busctl_cmds=(
|
|
"list:List bus names"
|
|
"status:Show bus service, process or bus owner credentials"
|
|
"monitor:Show bus traffic"
|
|
"capture:Capture bus traffix as pcap"
|
|
"tree:Show object tree of service"
|
|
"introspect:Introspect object"
|
|
"call:Call a method"
|
|
"get-property:Get property value"
|
|
"set-property:Set property value"
|
|
)
|
|
if (( CURRENT == 1 )); then
|
|
_describe -t commands 'busctl command' _busctl_cmds || compadd "$@"
|
|
else
|
|
local curcontext="$curcontext"
|
|
cmd="${${_busctl_cmds[(r)$words[1]:*]%%:*}}"
|
|
if (( $+functions[_busctl_$cmd] )); then
|
|
_busctl_$cmd
|
|
else
|
|
_message "no more options"
|
|
fi
|
|
fi
|
|
}
|
|
|
|
_arguments \
|
|
{-h,--help}'[Prints a short help text and exits.]' \
|
|
'--version[Prints a short version string and exits.]' \
|
|
'--no-pager[Do not pipe output into a pager]' \
|
|
'--no-legend[Do not show the headers and footers]' \
|
|
'--system[Connect to system manager]' \
|
|
'--user[Connect to user service manager]' \
|
|
{-H+,--host=}'[Operate on remote host]:userathost:_sd_hosts_or_user_at_host' \
|
|
{-M+,--machine=}'[Operate on local container]:machines:_sd_machines' \
|
|
'--address=[Connect to the bus specified by address]:address' \
|
|
'--show-machine[Show machine ID column in list]' \
|
|
'--unique[Only show unique names]' \
|
|
'--acquired[Only show acquired names]' \
|
|
'--activatable[Only show activatable names]' \
|
|
'--match=[Only show matching messages]:match' \
|
|
'--list[Do not show tree, but simple object path list]' \
|
|
'--quiet[Do not show method call reply]'\
|
|
'--verbose[Show result values in long format]' \
|
|
'--expect-reply=[Expect a method call reply]:boolean:(1 0)' \
|
|
'--auto-start=[Auto-start destination service]:boolean:(1 0)' \
|
|
'--allow-interactive-authorization=[Allow interactive authorization for operation]:boolean:(1 0)' \
|
|
'--timeout=[Maximum time to wait for method call completion]:timeout (seconds)' \
|
|
'--augment-creds=[Extend credential data with data read from /proc/$PID]:boolean:(1 0)' \
|
|
'*::busctl command:_busctl_commands'
|