From 5b29fedad850299950195a1878fe4923778f9dcc Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Mon, 21 Jul 2008 19:15:22 +0000 Subject: 25324: Danek Duvall: some Solaris and more general completions --- Completion/Solaris/Command/_svccfg | 58 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 Completion/Solaris/Command/_svccfg (limited to 'Completion/Solaris/Command/_svccfg') diff --git a/Completion/Solaris/Command/_svccfg b/Completion/Solaris/Command/_svccfg new file mode 100644 index 000000000..59f275f26 --- /dev/null +++ b/Completion/Solaris/Command/_svccfg @@ -0,0 +1,58 @@ +#compdef svccfg + +_svccfg() { + local context state line subcmds + + subcmds=( apply extract import validate export inventory delete addpropvalue delpropvalue ) + + if [[ $service == "svccfg" ]]; then + _arguments -s \ + '-?[Help]' \ + '-v[Verbose]' \ + '-s[FMRI on which to operate]:fmri:_svcs_fmri -c' \ + - set1 \ + '-f[Read commands from file]:command file:_files' \ + - set2 \ + '*::command:->subcmd' && return 0 + + if (( CURRENT == 1 )); then + _wanted commands expl 'svccfg subcommand' compadd -a subcmds + return + fi + service="$words[1]" + curcontext="${curcontext%:*}=$service:" + fi + + case $service in + (import) + _arguments \ + '-V[Verify property updates]' \ + ':file:_files' + ;; + + (apply|validate|inventory) + _files + ;; + + (export) + _svcs_fmri -c + ;; + + (delete) + _arguments \ + '-f[Force deletion if online or degraded]' \ + '*:FMRI:_svcs_fmri -c' + ;; + + (extract) + ;; + + (*) + _message "unknown svccfg subcommand: $service" + ;; + esac +} + +_svccfg "$@" + +# vi:tw=0 -- cgit 1.4.1