Diese Frage ist ganz ähnlich wie diese , aber ich kann die Lösung nicht verstehen. Ich kenne dieses Tutorial auch , kann aber immer noch nicht verstehen, was ich falsch mache.
Ich versuche, die Liste der Verzeichnisse automatisch zu vervollständigen, in denen sich Folgendes befindet /something/
:
$ ls /something/
One Other Three
auf eine Weise, die dies passieren wird:
$ hi [TAB]
One Other Three
$ hi O[TAB]
One Other
Nur wenn das erste Wort ist hi
und nicht nur drinnen /something/
.
Das mache ich in .profile
:
_codeComplete()
{
local cur=${COMP_WORDS[COMP_CWORD]}
COMPREPLY=( $(compgen `ls /something/` -- $cur) )
}
complete -F _codeComplete "hi "