Итак, в этом вопросе происходит три разные вещи:
1) Для просмотра функции завершения bash команды complete -p <command>
добивается цели. В этом случае complete -p screen
дает complete -o default -F _screen screen
2) Завершение Bash будет принимать аргументы. В случае screen -r
функция завершения bash screen
вызывается с аргументом -r
. После этого вы можете автоматически завершить его автоматически.
3) В Ubuntu /etc/bash_completion.d/screen
определена функция завершения экрана.
Таким образом, я добавил псевдоним screen -r
и сохранил функцию завершения следующим образом.
.bashrc:
alias scr="screen -r"
function _complete_scr() {
local does_screen_exist=$(type -t _screen_sessions)
local cur=$2 # Needed by _screen_sessions
if [[ "function" = "${does_screen_exist}" ]]; then
_screen_sessions "Detached"
fi
}
export -f _complete_scr
complete -F _complete_scr -o default scr