zsh의 프롬프트가 왜 다음과 같은지 알아내려고 노력 중입니다.
(텍스트 형식):
\[\]\u\[\] at \[\]\h\[\] in \[\]\w\[\]$(__git_ps1) \[\]$(git_diff)\n\[\]($(date +'1:MikesMBP.local ')) \[\]$\[\]
bash에서처럼 zsh를 호출하기 전에 내 비밀번호와 사용자 이름을 올바르게 나열하고 싶습니다. 이것은 내 .zshrc입니다.
# Lines configured by zsh-newuser-install
HISTFILE=~/.histfile
HISTSIZE=1000
SAVEHIST=1000
setopt appendhistory autocd beep extendedglob nomatch notify
bindkey -v
# End of lines configured by zsh-newuser-install
# The following lines were added by compinstall
zstyle :compinstall filename '/Users/mike/.zshrc'
autoload -Uz compinit
compinit
# End of lines added by compinstall
이는 zsh를 처음 시작할 때 생성되는 표준 구성입니다. 내장된 OS X zsh와 homebrew의 zsh를 사용해 보았지만 둘 다 동일한 오류가 발생했습니다. 무엇이 원인인지 아시나요?
답변1
이전 셸에서 변수 PS1을 내보냈으므로 zsh는 이를 상속하여 프롬프트를 표시하는 데 사용합니다. 이것이 PS*와 같은 셸 매개변수를 내보내면 안 되는 이유입니다. PS1을 내보내지 않으면 zsh는 .zshrc에서 PS1을 변경하거나 프롬프트 시스템을 사용할 때까지 기본 프롬프트를 사용합니다.