}
__get_all_units () { { __systemctl $1 list-unit-files; __systemctl $1 list-units --all; } \
+ | { while read -r a b; do echo " $a"; done; }; }
+__get_non_template_units() { { __systemctl $1 list-unit-files; __systemctl $1 list-units --all; } \
| { while read -r a b; do [[ $a =~ @\. ]] || echo " $a"; done; }; }
__get_template_names () { __systemctl $1 list-unit-files \
| { while read -r a b; do [[ $a =~ @\. ]] && echo " ${a%%@.*}@"; done; }; }
fi
local -A VERBS=(
- [ALL_UNITS]='is-active is-failed is-enabled status show cat mask preset help list-dependencies edit set-property revert'
+ [ALL_UNITS]='cat mask'
+ [NONTEMPLATE_UNITS]='is-active is-failed is-enabled status show preset help list-dependencies edit set-property revert'
[ENABLED_UNITS]='disable'
[DISABLED_UNITS]='enable'
[REENABLABLE_UNITS]='reenable'
comps=$( __get_all_units $mode )
compopt -o filenames
+ elif __contains_word "$verb" ${VERBS[NONTEMPLATE_UNITS]}; then
+ comps=$( __get_non_template_units $mode )
+ compopt -o filenames
+
elif __contains_word "$verb" ${VERBS[ENABLED_UNITS]}; then
comps=$( __get_enabled_units $mode )
compopt -o filenames