Bash의 이중 탭 목록을 모방하는 명령이 있습니까? [복사]

Bash의 이중 탭 목록을 모방하는 명령이 있습니까? [복사]

bash에서 [Tab][Tab]을 누르는 것과 동일한 가능한 자동 완성 목록을 얻고 싶지만 명령을 사용합니다. 이를 수행할 수 있는 방법이 있습니까?

답변1

을 사용할 수 있습니다 compgen. 이는 일반적으로 Tab 키를 두 번 누를 때 호출되는 프로그램입니다.

$ compgen -c c
cls
case
coproc
command_not_found_handle
caller
cd
command
compgen
complete
compopt
continue
clamd
cracklib-check
cpgr
cupsreject
cupsdisable
cupsaccept
cron
cppw
<100's more lines...>

또한 쉘 내장 기능도 포함되어 있습니다! 바라보다이 문제그리고 man compgen.

출력은 한 줄이 아닌 열(bash가 수행하는 방식)을 기준으로 정렬됩니다. 그러나 sort알파벳순으로 쉽게 출력할 수 있습니다.

답변2

일치 파일을 언급하는 경우 아마도 다음을 의미할 것입니다.

foo<TAB><TAB>

이는 대안이 되어야 합니다.

ls | grep -E '^foo'

매칭 프로그램을 참고하시면 이렇게 하시면 됩니다 $PATH.

관련 정보