EVERYTHING FROM THE OTHER REPO
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
_lslocks_module()
|
||||
{
|
||||
local cur prev OPTS
|
||||
COMPREPLY=()
|
||||
cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
||||
case $prev in
|
||||
'-p'|'--pid')
|
||||
local PIDS
|
||||
# /proc/locks can have 8 to 9 fields, see commit
|
||||
# 55c0d16bab8cc84b72bf11cb2fdd8aa6205ac608
|
||||
PIDS="$(awk '{print $(NF-3)}' /proc/locks)"
|
||||
COMPREPLY=( $(compgen -W "$PIDS" -- $cur) )
|
||||
return 0
|
||||
;;
|
||||
'-o'|'--output')
|
||||
local prefix realcur OUTPUT_ALL OUTPUT
|
||||
realcur="${cur##*,}"
|
||||
prefix="${cur%$realcur}"
|
||||
OUTPUT_ALL="COMMAND PID TYPE SIZE MODE M START END PATH BLOCKER"
|
||||
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
|
||||
;;
|
||||
'-h'|'--help'|'-V'|'--version')
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
OPTS="--bytes
|
||||
--json
|
||||
--noinaccessible
|
||||
--noheadings
|
||||
--output
|
||||
--output-all
|
||||
--pid
|
||||
--raw
|
||||
--notruncate
|
||||
--list-columns
|
||||
--help
|
||||
--version
|
||||
"
|
||||
COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
|
||||
return 0
|
||||
|
||||
}
|
||||
complete -F _lslocks_module lslocks
|
||||
Reference in New Issue
Block a user