Updated dhcpserver command

This commit is contained in:
2023-03-13 17:56:56 +01:00
parent 507b4aa0bd
commit 4557521b27

View File

@@ -1124,35 +1124,35 @@ _VBoxManage() {
;; ;;
dhcpserver) dhcpserver)
items=(add modify remove restart findlease) items=(add modify remove restart stop findlease)
subcommand=${COMP_WORDS[2]} subcommand=${COMP_WORDS[2]}
if [[ " ${items[@]} " == *" $subcommand "* ]]; then if [[ " ${items[*]} " == *" $subcommand "* ]]; then
case "${subcommand}" in case "${subcommand}" in
add) add)
items=(--server-ip --netmask --lower-ip --upper-ip) items=(--server-ip --netmask --lower-ip --upper-ip)
[[ " ${COMP_WORDS[@]} " != *" --interface"* && [[ " ${COMP_WORDS[*]} " != *" --interface"* &&
" ${COMP_WORDS[@]} " != *" --network"* ]] && " ${COMP_WORDS[*]} " != *" --network"* ]] &&
items+=(--network --interface) items+=(--network --interface)
[[ " ${COMP_WORDS[@]} " != *" --enable"* && [[ " ${COMP_WORDS[*]} " != *" --enable"* &&
" ${COMP_WORDS[@]} " != *" --disable"* ]] && " ${COMP_WORDS[*]} " != *" --disable"* ]] &&
items+=(--enable --disable) items+=(--enable --disable)
[[ " ${COMP_WORDS[@]} " == *" --options"* ]] && [[ " ${COMP_WORDS[*]} " == *" --options"* ]] &&
items+=(--vm --nic --id --value --remove) items+=(--vm --nic --id --value --remove)
[[ " ${COMP_WORDS[@]} " != *" --global"* && [[ " ${COMP_WORDS[*]} " != *" --global"* &&
" ${COMP_WORDS[@]} " != *" --group"* && " ${COMP_WORDS[*]} " != *" --group"* &&
" ${COMP_WORDS[@]} " != *" --vm"* && " ${COMP_WORDS[*]} " != *" --vm"* &&
" ${COMP_WORDS[@]} " != *" --mac-address"* ]] && " ${COMP_WORDS[*]} " != *" --mac-address"* ]] &&
items+=(--global --group --vm --mac-address) items+=(--global --group --vm --mac-address)
[[ " ${COMP_WORDS[@]} " == *" --global"* ]] && [[ " ${COMP_WORDS[*]} " == *" --global"* ]] &&
items+=(--set-opt --set-opt-hex --force-opt items+=(--set-opt --set-opt-hex --force-opt
--supress-opt --min-lease-time --default-lease-time --supress-opt --min-lease-time --default-lease-time
--max-lease-time) --max-lease-time)
[[ " ${COMP_WORDS[@]} " == *" --group"* ]] && [[ " ${COMP_WORDS[*]} " == *" --group"* ]] &&
items+=(--set-opt --set-opt-hex --force-opt items+=(--set-opt --set-opt-hex --force-opt
--supress-opt --incl-mac --excl-mac --incl-mac-wild --supress-opt --incl-mac --excl-mac --incl-mac-wild
--excl-mac-wild --incl-vendor --excl-vendor --excl-mac-wild --incl-vendor --excl-vendor
@@ -1161,12 +1161,12 @@ _VBoxManage() {
--min-lease-time --default-lease-time --min-lease-time --default-lease-time
--max-lease-time) --max-lease-time)
[[ " ${COMP_WORDS[@]} " == *" --vm"* ]] && [[ " ${COMP_WORDS[*]} " == *" --vm"* ]] &&
items+=(--nic --set-opt --set-opt-hex --force-opt items+=(--nic --set-opt --set-opt-hex --force-opt
--supress-opt --min-lease-time --default-lease-time --supress-opt --min-lease-time --default-lease-time
--max-lease-time --fixed-address) --max-lease-time --fixed-address)
[[ " ${COMP_WORDS[@]} " == *" --mac-address"* ]] && [[ " ${COMP_WORDS[*]} " == *" --mac-address"* ]] &&
items+=(--set-opt --set-opt-hex --force-opt items+=(--set-opt --set-opt-hex --force-opt
--supress-opt --min-lease-time --default-lease-time --supress-opt --min-lease-time --default-lease-time
--max-lease-time --fixed-address) --max-lease-time --fixed-address)
@@ -1176,30 +1176,30 @@ _VBoxManage() {
;; ;;
modify) modify)
items=(--server-ip --netmask --lower-ip --upper-ip) items=(--server-ip --netmask --lower-ip --upper-ip)
[[ " ${COMP_WORDS[@]} " != *" --interface"* && [[ " ${COMP_WORDS[*]} " != *" --interface"* &&
" ${COMP_WORDS[@]} " != *" --network"* ]] && " ${COMP_WORDS[*]} " != *" --network"* ]] &&
items+=(--network --interface) items+=(--network --interface)
[[ " ${COMP_WORDS[@]} " != *" --enable"* && [[ " ${COMP_WORDS[*]} " != *" --enable"* &&
" ${COMP_WORDS[@]} " != *" --disable"* ]] && " ${COMP_WORDS[*]} " != *" --disable"* ]] &&
items+=(--enable --disable) items+=(--enable --disable)
[[ " ${COMP_WORDS[@]} " == *" --options"* ]] && [[ " ${COMP_WORDS[*]} " == *" --options"* ]] &&
items+=(--vm --nic --id --value --remove) items+=(--vm --nic --id --value --remove)
[[ " ${COMP_WORDS[@]} " != *" --global"* && [[ " ${COMP_WORDS[*]} " != *" --global"* &&
" ${COMP_WORDS[@]} " != *" --group"* && " ${COMP_WORDS[*]} " != *" --group"* &&
" ${COMP_WORDS[@]} " != *" --vm"* && " ${COMP_WORDS[*]} " != *" --vm"* &&
" ${COMP_WORDS[@]} " != *" --mac-address"* ]] && " ${COMP_WORDS[*]} " != *" --mac-address"* ]] &&
items+=(--global --group --vm --mac-address) items+=(--global --group --vm --mac-address)
[[ " ${COMP_WORDS[@]} " == *" --global"* ]] && [[ " ${COMP_WORDS[*]} " == *" --global"* ]] &&
items+=(--del-opt --set-opt --set-opt-hex --force-opt items+=(--del-opt --set-opt --set-opt-hex --force-opt
--unforce-opt --supress-opt --unsupress-opt --unforce-opt --supress-opt --unsupress-opt
--min-lease-time --default-lease-time --min-lease-time --default-lease-time
--max-lease-time --remove-config) --max-lease-time --remove-config)
[[ " ${COMP_WORDS[@]} " == *" --group"* ]] && [[ " ${COMP_WORDS[*]} " == *" --group"* ]] &&
items+=(--set-opt-hex --force-opt --unforce-opt items+=(--set-opt-hex --force-opt --unforce-opt
--supress-opt --unsupress-opt --del-mac --incl-mac --supress-opt --unsupress-opt --del-mac --incl-mac
--excl-mac --del-mac-wild --incl-mac-wild --excl-mac --del-mac-wild --incl-mac-wild
@@ -1211,13 +1211,13 @@ _VBoxManage() {
--default-lease-time --max-lease-time --default-lease-time --max-lease-time
--remove-config) --remove-config)
[[ " ${COMP_WORDS[@]} " == *" --vm"* ]] && [[ " ${COMP_WORDS[*]} " == *" --vm"* ]] &&
items+=(--del-opt --set-opt --set-opt-hex --force-opt items+=(--del-opt --set-opt --set-opt-hex --force-opt
--unforce-opt --supress-opt --unsupress-opt --unforce-opt --supress-opt --unsupress-opt
--min-lease-time --default-lease-time --min-lease-time --default-lease-time
--max-lease-time --fixed-address --remove-config) --max-lease-time --fixed-address --remove-config)
[[ " ${COMP_WORDS[@]} " == *" --mac-address"* ]] && [[ " ${COMP_WORDS[*]} " == *" --mac-address"* ]] &&
items+=(--set-opt --set-opt-hex --force-opt items+=(--set-opt --set-opt-hex --force-opt
--unforce-opt --supress-opt --unsupress-opt --unforce-opt --supress-opt --unsupress-opt
--min-lease-time --default-lease-time --min-lease-time --default-lease-time
@@ -1226,7 +1226,7 @@ _VBoxManage() {
_get_excluded_items "${items[@]}" _get_excluded_items "${items[@]}"
COMPREPLY=( $(compgen -W "$result" -- ${cur}) ) COMPREPLY=( $(compgen -W "$result" -- ${cur}) )
;; ;;
remove|restart) remove|restart|stop)
case "${prev}" in case "${prev}" in
--network) --network)
COMPREPLY=() COMPREPLY=()
@@ -1238,8 +1238,8 @@ _VBoxManage() {
;; ;;
esac esac
if [[ " ${COMP_WORDS[@]} " != *" --interface"* && if [[ " ${COMP_WORDS[*]} " != *" --interface"* &&
" ${COMP_WORDS[@]} " != *" --network"* ]]; then " ${COMP_WORDS[*]} " != *" --network"* ]]; then
items=(--network --interface) items=(--network --interface)
_get_excluded_items "${items[@]}" _get_excluded_items "${items[@]}"
COMPREPLY=( $(compgen -W "$result" -- ${cur}) ) COMPREPLY=( $(compgen -W "$result" -- ${cur}) )
@@ -1258,8 +1258,8 @@ _VBoxManage() {
;; ;;
esac esac
if [[ " ${COMP_WORDS[@]} " != *" --interface"* && if [[ " ${COMP_WORDS[*]} " != *" --interface"* &&
" ${COMP_WORDS[@]} " != *" --network"* ]]; then " ${COMP_WORDS[*]} " != *" --network"* ]]; then
items+=(--network --interface) items+=(--network --interface)
_get_excluded_items "${items[@]}" _get_excluded_items "${items[@]}"
COMPREPLY=( $(compgen -W "$result" -- ${cur}) ) COMPREPLY=( $(compgen -W "$result" -- ${cur}) )