diff options
Diffstat (limited to 'usr/src/cmd/nsadmin/bash/bash_completion.d/dladm')
| -rw-r--r-- | usr/src/cmd/nsadmin/bash/bash_completion.d/dladm | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/usr/src/cmd/nsadmin/bash/bash_completion.d/dladm b/usr/src/cmd/nsadmin/bash/bash_completion.d/dladm new file mode 100644 index 0000000000..179227b2a2 --- /dev/null +++ b/usr/src/cmd/nsadmin/bash/bash_completion.d/dladm @@ -0,0 +1,34 @@ +_dladm() +{ + local cur prev opts base + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + + if [[ ${prev} == 'dladm' ]]; then + local cmds="rename-link show-link create-aggr delete-aggr add-aggr \ + remove-aggr modify-aggr show-aggr scan-wifi connect-wifi \ + disconnect-wifi show-wifi set-linkprop reset-linkprop \ + show-linkprop show-ether create-secobj delete-secobj show-secobj \ + create-vlan delete-vlan show-vlan create-iptun delete-iptun \ + modify-iptun show-iptun delete-phys show-phys create-vnic \ + delete-vnic show-vnic create-part delete-part show-part show-ib \ + create-etherstub delete-etherstub show-etherstub create-bridge \ + modify-bridge delete-bridge add-bridge remove-bridge show-bridge \ + show-bridge show-usage" + + COMPREPLY=( $(compgen -W "$cmds" -- ${cur}) ) + # The -z takes a zone option, ignore everything else + elif [[ ${prev} =~ -.*z$ ]]; then + local zones=$(zoneadm list -c | grep -v '^global$') + COMPREPLY=( $(compgen -W "${zones}" -- ${cur}) ) + elif [[ ${prev} =~ 'delete-vnic' ]]; then + local vnics=$(dladm show-vnic -p -o link) + COMPREPLY=( $(compgen -W "${vnics}" -- ${cur}) ) + elif [[ ${prev} =~ 'delete-etherstub' ]]; then + local stubs=$(dladm show-etherstub -p) + COMPREPLY=( $(compgen -W "${stubs}" -- ${cur}) ) + fi +} + +complete -F _dladm dladm |
