Вы определили PATH=$PATH:$PGMODELER_ROOT
?
Если так, попытайтесь добавить:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"$PGMODELER_ROOT"
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/Qt5.1.0/5.1.0/gcc_64/lib
кому: /etc/profile
. Если у Вас есть Установленный Qt5.
Вы также можете использовать параметр -X
с compgen
:
_grcat() {
local word
COMPREPLY=()
if [ 1 -eq "$COMP_CWORD" ]; then
pushd /etc/grcat &>/dev/null || return 1
word="${COMP_WORDS[COMP_CWORD]}"
local filterpat='README'
COMPREPLY=($(compgen -f -X "$filterpat" -- "$word"))
popd &>/dev/null
fi
}
complete -F _grcat grcat
compgen
принимает большинство тех же параметров, что и complete
, за исключением -p
и -r
.
compgen
также генерирует результат, записывает совпадения в стандартный вывод. complete
сохраняет правила только для будущего использования.
Из здесь я вижу, что переменная, которую вы ищете, является FIGNORE
. Вы можете сделать что-то вроде,
export FIGNORE=$FIGNORE:/etc/grcat/README
Кажется, вы также можете использовать команду Complete
, чтобы выполнить то, что вы пытаетесь сделать. Я вижу информацию относительно использования команды Complete
из here и here.
Вы можете попробовать изменить команду complete
, которая есть в вашем скрипте, как, например,
complete -f -X '/etc/grcat/README' grcat
From man page of complete
,
-X filterpat filterpat - это шаблон, используемый для расширения имен файлов. Он применяется к списку возможных завершений, генерируемому параметром предыдущие опции и аргументы, и каждый
Фильтрпат по завершению соответствия удаляется из списка. Вперед! в filterpat отрицает шаблон; в этом случае любое завершение не Соответствующий фильтр-пат удален.