Потому что вы перенаправляете его только в файл. если вы хотите передать его следующей команде, используйте tee
, чтобы сделать и то, и другое.
... | tee /tmp/filx |...
tee
используется для записи в файл и передачи стандартного вывода следующей команде через |
для чтения из стандартного ввода.
Или вы должны заменить в этой части команды /tmp/filx |
, |
на ;
или &&
.
Вы можете использовать следующие:
autoload -U colors && colors
export PS1="%F{250}%K{000}[$USER:%~]\$%F{015}%K{000} "
Подробнее см. мой ответ здесь:https://stackoverflow.com/a/58563434/1355058