Выполнение zsh рехеширование после сборки

Похоже на использование установщика "с одним щелчком" для дистрибутива фабрики, а не 11.4.

Попробуйте эту ссылку: http://software.opensuse.org/main/ymp_without_arch_and_version?base=openSUSE%3A11.4&package=boost&project=devel%3Alibraries%3Ac_c%2B%2B&query=boost&repository=openSUSE_11.4 вместо этого.

2
17.08.2012, 18:44
3 ответа

Функции Shell не работают в их собственной подоболочке, если Вы не используете круглые скобки вместо обычных фигурных скобок вокруг тела. Ваша функция действительно обновляет исполняемый хеш на каждой версии zsh, который я видел, и я не думаю, что существует опция изменить это поведение.

1
27.01.2020, 22:23

Я думаю source мог бы быть наилучший вариант здесь. Вот пример:

cat << EOF > foo
touch $1
chmod +x $1
rehash
EOF

Выполниться foo как это:

source foo bar

Если это было в Вашем пути, bar теперь completable.

0
27.01.2020, 22:23

Функция оболочки получает параметры точно так же, как сценарий оболочки. "$@", $*$1... $n. Все остальные операции тоже работают.

Попробуйте использовать параметр функции, в данном случае $1.

build() {
    ~/bin/real_build ${1} && rehash
}

Не используйте кавычки, если только ваш настоящий _скрипт сборки не поддерживает ""в качестве параметра.
""отличается от ничего.

Это хороший способ создать «псевдоним», которому нужны аргументы в определенных местах.

0
19.01.2021, 17:52

Теги

Похожие вопросы