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
.