]> git.ipfire.org Git - thirdparty/util-linux.git/blobdiff - bash-completion/wipefs
lscpu: add --bytes
[thirdparty/util-linux.git] / bash-completion / wipefs
index db9426e2ad23571a977d5884b6fcd4522cf887a3..13568ca325cc3647159b5ede7fc3ae1679a199ec 100644 (file)
@@ -5,6 +5,20 @@ _wipefs_module()
        cur="${COMP_WORDS[COMP_CWORD]}"
        prev="${COMP_WORDS[COMP_CWORD-1]}"
        case $prev in
+               '-O'|'--output')
+                       local prefix realcur OUTPUT_ALL OUTPUT
+                       realcur="${cur##*,}"
+                       prefix="${cur%$realcur}"
+                       OUTPUT_ALL="UUID LABEL LENGTH TYPE OFFSET USAGE DEVICE"
+                       for WORD in $OUTPUT_ALL; do
+                               if ! [[ $prefix == *"$WORD"* ]]; then
+                                       OUTPUT="$WORD ${OUTPUT:-""}"
+                               fi
+                       done
+                       compopt -o nospace
+                       COMPREPLY=( $(compgen -P "$prefix" -W "$OUTPUT" -S ',' -- $realcur) )
+                       return 0
+                       ;;
                '-o'|'--offset')
                        COMPREPLY=( $(compgen -W "offset" -- $cur) )
                        return 0
@@ -15,18 +29,32 @@ _wipefs_module()
                        COMPREPLY=( $(compgen -W "$TYPES" -- $cur) )
                        return 0
                        ;;
-
+               '-h'|'--help'|'-V'|'--version')
+                       return 0
+                       ;;
        esac
        case $cur in
                -*)
-                       OPTS="-a --all -f --force -h --help -n --no-actn -o --offset -p --parsable -q --quiet -t --types -V --version"
+                       OPTS="
+                               --all
+                               --backup
+                               --force
+                               --noheadings
+                               --json
+                               --no-act
+                               --offset
+                               --output
+                               --parsable
+                               --quiet
+                               --types
+                               --help
+                               --version
+                       "
                        COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
                        return 0
                        ;;
        esac
-       local DEVS
-       DEVS=''; while read dev; do DEVS+="$dev " ; done < <(lsblk -pnro name)
-       COMPREPLY=( $(compgen -W "$DEVS" -- $cur) )
+       COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
        return 0
 }
 complete -F _wipefs_module wipefs