Це питання досить схоже на це , але я не можу зрозуміти рішення. Я також знаю цей підручник , але все-таки я не в змозі зрозуміти, що я роблю неправильно.
Я намагаюся заповнити список каталогів, розміщених у /something/:
$ ls /something/
One Other Three
таким чином, що це станеться:
$ hi [TAB]
One Other Three
$ hi O[TAB]
One Other
Тільки тоді, коли перше слово є, hiі не тільки всередині /something/.
Це те, що я роблю .profile:
_codeComplete()
{
local cur=${COMP_WORDS[COMP_CWORD]}
COMPREPLY=( $(compgen `ls /something/` -- $cur) )
}
complete -F _codeComplete "hi "