return 0
;;
'-U'|'UUID=')
- # only works for block devices, i.e., not for swap files.
- local SWAPS
- SWAPS="$(swapon --show=TYPE,NAME --raw --noheading | \
- awk '$1 !~ /file/ { print $2 }')"
- [ -z "$SWAPS" ] && return 0
- local UUIDS
- UUIDS="$(lsblk -nrp -o UUID "$SWAPS")"
- COMPREPLY=( $(compgen -W "$UUIDS" -- $cur) )
+ COMPREPLY=( $(compgen -W "$(swapon --show=UUID --noheading)" -- $cur) )
return 0
;;
'-L'|'LABEL=')
- # only works for block devices, i.e., not for swap files.
- local SWAPS
- SWAPS="$(swapon --show=TYPE,NAME --raw --noheading | \
- awk '$1 !~ /file/ { print $2 }')"
- [ -z "$SWAPS" ] && return 0
- local LABELS
- LABELS="$(lsblk -nrp -o LABEL "$SWAPS")"
- COMPREPLY=( $(compgen -W "$LABELS" -- $cur) )
+ COMPREPLY=( $(compgen -W "$(swapon --show=LABEL --noheading)" -- $cur) )
return 0
;;
'-h'|'--help'|'-V'|'--version')
return 0
;;
esac
- local DEVS
- DEVS="$(swapon --show=NAME --raw --noheading)"
- COMPREPLY=( $(compgen -W "$DEVS" -- $cur) )
+ COMPREPLY=( $(compgen -W "$(swapon --show=NAME --raw --noheading)" -- $cur) )
return 0
}
complete -F _swapoff_module swapoff
'--show')
# FIXME: how to append to a string with compgen?
local OUTPUT
- OUTPUT="NAME TYPE SIZE USED PRIO"
+ OUTPUT="NAME TYPE SIZE USED PRIO UUID LABEL"
compopt -o nospace
COMPREPLY=( $(compgen -W "$OUTPUT" -S ',' -- $cur) )
return 0