특정 Linux 명령이 포함된 스크립트를 작성 중입니다. 이제 명령줄에서 직접 사용할 때 명령에 자동 완성 동작이 적용됩니다. 예를 들어, 명령 이름, 공백, 문자열을 입력하고 탭을 누르면 경로에 있는 실행 파일 이름이 완성됩니다. 그러나 래퍼 스크립트는아니요이런 버릇이 있는 것 같습니다. bash가 래퍼에 대해 원래 명령과 동일한 자동 완성을 사용하도록 하려면 어떻게 해야 합니까?
좀 더 구체적으로 말하자면, 명령은 입니다 which
. 실패하지 않을 경우 이를 호출하는 래퍼를 작성하고 있습니다 . readlink -f
.which
which
답변1
which
with에 대한 완료 사양을 나열할 수 있습니다.
complete -p which
밝혀지다 complete -c which
. 따라서 mywhich
PATH에 자신만의 새 명령(실행 가능)이 있는 경우 bash를 구성하여 동일한 방식으로 수행할 수 있습니다.
complete -c mywhich
이 줄을 넣으시면 됩니다~/.bash_completion