Bash에서 다음과 같은 작업을 수행하고 싶습니다.
zsh 프롬프트에서 경로 형식을 지정하는 방법은 무엇입니까?
그러나 내가 시도한 모든 결과는 PWD
터미널을 시작한 첫 번째 디렉터리에 고정되었습니다. 이상하게도 PS1
현재 git 브랜치를 프롬프트에 넣고 항상 업데이트하는 기능도 있어서 왜 PWD
멈췄는지 헷갈립니다. 나의 현재 팁여기그런데.
\w
교체 하려고 시도했지만 $(pwd|grep --color=always /)
막혔습니다. 또한 이 작업을 수행하기 위해 bash 문자열 대체를 사용해 보았지만 그 중 하나도 작동하지 않았습니다. ${PWD////$bldred/$bldblu}
($bldred 및 $bldblue는 프롬프트.sh에 정의되어 있습니다.)
답변1
프롬프트에 동적 변수를 포함할 때는 이를 인용해야 합니다.
PROMPT_COMMAND 항목 중 일부를 잘 이해하지 못합니다. PS1='${PWD////'"$bldred/$bldblue"'} \$'
직접 시도해 보고 작동하는지 확인하세요.
답변2
스크립트의 마지막 부분:
case "$TERM" in
xterm*|rxvt*)
PS1=...
...
설정하면 쓸모가 없습니다 $PROMPT_COMMAND
. 버전은 $PS1
한 번만 실행됩니다. 따라서 스크립트를 처음 실행한 후에는 제목 업데이트가 표시되지 않습니다. $PROMPT_COMMAND
다른 모든 것과 함께 제목 변경 사항을 추가 해야 합니다 .
switch
실제 지점 으로 이동
if [ "$color_prompt" = yes ]; then
그리고 그 위에 다양한 버전을 구축하세요 $PROMPT_COMMANDS
. 나를 위해 작동합니다.