У меня есть сценарий, который позволяет выполнять процессы Bash в фоновом режиме, я назвал его "backy". Программы, которые я хочу запускать в фоновом режиме, я вызываю следующим образом:
backy long-running-script param1 param2
Проблема в том, что я теряю завершение Bash для long-running-script
, если я добавляю другой сценарий.
Я хочу написать файл завершения Bash, который сохраняет не только завершение Bash для long-running-script
и все его параметры, также для любого другого сценария, который я хочу вызвать с помощью backy.
У меня есть некоторый опыт завершения Bash, но мне просто не хватает команды, которую я могу вставить в свой сценарий завершения Bash, чтобы она завершилась с завершением сценарий, который должен быть вызван. Есть идеи?
Мое завершение на данный момент:
have backy &&
_backy_complete()
{
local cur prev goals
COMPREPLY=()
cur=${COMP_WORDS[COMP_CWORD]}
# How to get the completion from the script that is the param for backy,
# in a generic way?
COMPREPLY=( ????? )
return 0
} &&
complete -F _backy_complete backy
РЕДАКТИРОВАНИЕ - РЕШЕНИЕ:
Благодаря Лекенштейну я заменил содержимое моего существующего сценария завершения bash только этой строкой:
complete -F _command backy