mirror of
https://github.com/gryf/vboxmanage-bash-completion.git
synced 2025-12-17 11:30:23 +01:00
Added discardstate command
This commit is contained in:
1
README
1
README
@@ -18,6 +18,7 @@ Current version of script was written and tested against VBoxManage in version
|
||||
- createvm
|
||||
- debugvm
|
||||
- dhcpserver
|
||||
- discardstate
|
||||
- list
|
||||
- showhdinfo
|
||||
- showvminfo
|
||||
|
||||
32
VBoxManage
32
VBoxManage
@@ -7,7 +7,6 @@
|
||||
#
|
||||
# [1] Sebastian T. Hafner <sonix@own-hero.net>
|
||||
#
|
||||
# [ ] discardstate
|
||||
# [ ] export
|
||||
# [ ] extpack
|
||||
# [ ] getextradata
|
||||
@@ -110,6 +109,28 @@ _VBoxManage() {
|
||||
done
|
||||
}
|
||||
|
||||
_vms_state_comp() {
|
||||
local command=$1
|
||||
local cur=$2
|
||||
local vms
|
||||
local item
|
||||
|
||||
compopt -o filenames
|
||||
|
||||
vms=$(VBoxManage list vms -l | \
|
||||
egrep '^Name|State' | \
|
||||
egrep -B1 'State:\s+saved' | \
|
||||
grep Name |sed 's/Name:\s\+//' | \
|
||||
tr '\n' '|' | \
|
||||
sed 's/|$//' | \
|
||||
sed 's/"//g')
|
||||
IFS='|' read -ra vms <<< "$vms"
|
||||
for item in "${vms[@]}"
|
||||
do
|
||||
[[ ${item^^} == ${cur^^}* ]] && COMPREPLY+=("$item")
|
||||
done
|
||||
}
|
||||
|
||||
_list_comp() {
|
||||
local cur=$1
|
||||
local list
|
||||
@@ -348,7 +369,10 @@ _VBoxManage() {
|
||||
|
||||
case "${cmd}" in
|
||||
adoptstate)
|
||||
_vms_comp vms ${cur}
|
||||
_find_item_name 2
|
||||
COMPREPLY=()
|
||||
[[ -z "${name}" ]] &&
|
||||
_vms_state_comp ${cur}
|
||||
;;
|
||||
bandwidthctl)
|
||||
local items=(add set remove list)
|
||||
@@ -734,6 +758,10 @@ _VBoxManage() {
|
||||
fi
|
||||
;;
|
||||
discardstate)
|
||||
_find_item_name 2
|
||||
COMPREPLY=()
|
||||
[[ -z "${name}" ]] &&
|
||||
_vms_state_comp ${cur}
|
||||
;;
|
||||
"export")
|
||||
;;
|
||||
|
||||
Reference in New Issue
Block a user