summaryrefslogtreecommitdiffstats
path: root/shell-completion/resizepart
diff options
context:
space:
mode:
authorSami Kerola2013-03-23 00:37:11 +0100
committerSami Kerola2013-04-01 17:08:02 +0200
commitbf60993cf2442f67bd47bcfcf6bd49c7392c2ba1 (patch)
tree9e45987bc2b0b429e042baa3cd714ea773e6b3b9 /shell-completion/resizepart
parentbash-completion: add bash completetion configure option (diff)
downloadkernel-qcow2-util-linux-bf60993cf2442f67bd47bcfcf6bd49c7392c2ba1.tar.gz
kernel-qcow2-util-linux-bf60993cf2442f67bd47bcfcf6bd49c7392c2ba1.tar.xz
kernel-qcow2-util-linux-bf60993cf2442f67bd47bcfcf6bd49c7392c2ba1.zip
bash-completion: disk-utils
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
Diffstat (limited to 'shell-completion/resizepart')
-rw-r--r--shell-completion/resizepart25
1 files changed, 25 insertions, 0 deletions
diff --git a/shell-completion/resizepart b/shell-completion/resizepart
new file mode 100644
index 000000000..b178b529c
--- /dev/null
+++ b/shell-completion/resizepart
@@ -0,0 +1,25 @@
+_resizepart_module()
+{
+ local cur prev OPTS
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ case $COMP_CWORD in
+ 1)
+ local DEV TYPE DEVICES=''
+ while read DEV TYPE; do
+ [ $TYPE = 'disk' ] && DEVICES+="$DEV "
+ done < <(lsblk -pnro name,type)
+ OPTS="-h --help -V --version $DEVICES"
+ COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
+ ;;
+ 2)
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+ COMPREPLY=( $(compgen -W "$(cat /sys/block/${prev##*/}/*/partition 2>/dev/null)" -- $cur) )
+ ;;
+ 3)
+ COMPREPLY="length"
+ ;;
+ esac
+ return 0
+}
+complete -F _resizepart_module resizepart