Bash $PS1 변수의 매개변수

Bash $PS1 변수의 매개변수

변수 에 포함될 수 있는 다양한 매개변수 사이를 확장합니다 bash PS1.\w

$HOME이 물결표로 축약된 현재 작업 디렉토리(PROMPT_DIRTRIM 변수 값 사용)

에 명시된 바와 같이배쉬 매뉴얼.

My는 (에 지정된 것과 동일한 값 ) $HOME로 설정되지만 I가 디렉토리에 있을 때 in 을 확장하면 제공됩니다 . 따라서 "물결표"로 축약되지 않습니다./home/myuser//etc/passwd\wPS1/home/myuser$HOME

나는 Ubuntu 16.04를 GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu).

뭐가 문제 야? \w현재 디렉터리의 경로를 실제로 복사하는 소스는 무엇입니까 ?

답변1

후행 //home/myuser/혼란스러운 bash입니다. 제거하면 정상적인 동작을 볼 수 있을 것 같습니다.

해당 슬래시는 디렉터리 이름의 일부가 아닙니다. 경로 구분 기호입니다. 에 있어서도 안 되고 /etc/passwd, 있어서도 안 됩니다 $HOME.

다음을 사용하여 파일을 건드리지 않고도 해당 이론을 테스트할 수 있습니다.

HOME=/home/myuser

그 후에는 프롬프트에 물결표가 나타나야 합니다.

관련 정보