![Bash용 탭 완성 스크립트 작성](https://linux55.com/image/64691/Bash%EC%9A%A9%20%ED%83%AD%20%EC%99%84%EC%84%B1%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%20%EC%9E%91%EC%84%B1.png)
사용자 입력을 읽고 프로세스를 종료하는 쉘 스크립트를 만들었습니다. 그러나 bash에서는 사용자가 Tab키를 누르면 bash가 몇 가지 keyword
이름을 제안합니다 file
. 그러나 내 스크립트는 제안을 하지 않습니다.
내 스크립트에 대해 탭 완성을 활성화하려면 어떻게 해야 합니까?
답변1
가장 쉬운 방법은 설치 bash-completion
(또는 배포판 이름이 무엇이든)하고 완료 스크립트를 작성하여 에 놓는 것입니다 /etc/bash_completion.d
. 기본 완료 스크립트는 다음과 같습니다.
have cancel &&
_cancel()
{
local cur
COMPREPLY=()
_get_comp_words_by_ref cur
COMPREPLY=( $( compgen -W "$( lpstat | cut -d' ' -f1 )" -- "$cur" ) )
} &&
complete -F _cancel cancel
cancel
의 명령 입니다 cups
. 설명서를 읽고 COMPREPLY
필요에 맞게 조정하십시오.compgen
bash