forked from Surachai-kent/util-linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlsipc
More file actions
71 lines (67 loc) · 1.28 KB
/
lsipc
File metadata and controls
71 lines (67 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
_lsipc_module()
{
local cur prev OPTS ARG
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
case $prev in
'-i'|'--id')
COMPREPLY=( $(compgen -W "id" -- $cur) )
return 0
;;
'-h'|'--help'|'-V'|'--version')
return 0
;;
'--time-format')
COMPREPLY=( $(compgen -W "short full iso" -- $cur) )
return 0
;;
'-o'|'--output')
local prefix realcur OUTPUT_ALL OUTPUT
realcur="${cur##*,}"
prefix="${cur%$realcur}"
OUTPUT_ALL="
KEY ID OWNER PERMS CUID CUSER CGID
CGROUP UID USER GID GROUP CTIME
SIZE NATTCH STATUS ATTACH DETACH
COMMAND CPID LPID
USEDBYTES MSGS SEND RECV LSPID LRPID
NSEMS OTIME
RESOURCE DESCRIPTION LIMIT USED USE%
"
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
;;
esac
OPTS="
--shmems
--queues
--semaphores
--global
--id
--noheadings
--notruncate
--time-format
--bytes
--creator
--export
--json
--newline
--list
--output
--numeric-perms
--raw
--time
--help
--version
"
COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
return 0
}
complete -F _lsipc_module lsipc