From 68c7139a4b78f5e3fb61d0c5b642a9260a89dd7a Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Wed, 10 Jan 2018 23:03:26 +0900 Subject: [PATCH] bash-completion: timedatectl: suggests hostname and machine name --- shell-completion/bash/timedatectl | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/shell-completion/bash/timedatectl b/shell-completion/bash/timedatectl index b9d0081..13b99f2 100644 --- a/shell-completion/bash/timedatectl +++ b/shell-completion/bash/timedatectl @@ -25,16 +25,24 @@ __contains_word () { done } +__get_machines() { + local a b + machinectl list --no-legend --no-pager | { while read a b; do echo " $a"; done; }; +} + _timedatectl() { local i verb comps local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} local OPTS='-h --help --version --adjust-system-clock --no-pager - --no-ask-password -H --host --machine' + --no-ask-password -H --host -M --machine' if __contains_word "$prev" $OPTS; then case $prev in --host|-H) - comps='' + comps=$(compgen -A hostname) + ;; + --machine|-M) + comps=$( __get_machines ) ;; esac COMPREPLY=( $(compgen -W '$comps' -- "$cur") ) @@ -48,7 +56,7 @@ _timedatectl() { local -A VERBS=( [BOOLEAN]='set-local-rtc set-ntp' - [STANDALONE]='status set-time list-timezones' + [STANDALONE]='status list-timezones' [TIMEZONES]='set-timezone' [TIME]='set-time' ) -- 2.7.4