_chrt_module() { local cur prev OPTS COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" case $prev in '-h'|'--help'|'-V'|'--version') return 0 ;; esac # FIXME: -p is ambiguous, it takes either pid or priority as an # argument depending on whether user wanted to get or set the # values. Perhaps the command interface should be reconsidered. case $cur in -*) OPTS="--batch --fifo --idle --other --rr --reset-on-fork --all-tasks --help --max --pid --verbose --version" COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) return 0 ;; esac local PIDS PIDS=$(for I in /proc/[0-9]*; do echo ${I##"/proc/"}; done) COMPREPLY=( $(compgen -W "$PIDS" -- $cur) ) return 0 } complete -F _chrt_module chrt