Чтобы оболочка zsh
выполняла подстановку команд для значения PS1
, установите параметр оболочки PROMPT_SUBST
:
set -o PROMPT_SUBST
PS1='$(pwd) > '
Обратите внимание, что нет необходимости export
использовать переменную PS1
.
Причина, по которой параметр оболочки PROMPT_SUBST
не установлен по умолчанию, вероятно, заключается в том, что оболочка zsh
уже имеет богатый синтаксис для расширений подсказок.
Например, ваш пример можно заменить на
PS1='%/ > '
Дополнительную информацию об этом см. в разделе «РАСШИРЕНИЕ ПОСЛЕДОВАТЕЛЬНОСТЕЙ ПОДСКАЗОК» в руководстве zshmisc
по вашей системе.
При использовании
PS1="$(pwd) > "
значение, присвоенное переменной PS1
, расширяется перед выполнением присвоения. Вот почему он не меняется, когда вы меняете каталоги.
сawk
:
awk '/>Feature NODE_/{ nodeId=$0; next } /locus_tag/{ print nodeId, $2 }' infile