우리가 PS1
의 값을 출력, 그것은 설정 : 우리는 인쇄 환경 변수에 env
명령을 사용할 수 있습니다env가 PS1 변수를 인쇄하지 않는 이유는 무엇입니까?
$ echo $PS1
[\[email protected]\h \W]\$
. 왜 PS1
변수가 표시되지 않습니까?
$ env | grep PS1
# No output here
우리가 PS1
의 값을 출력, 그것은 설정 : 우리는 인쇄 환경 변수에 env
명령을 사용할 수 있습니다env가 PS1 변수를 인쇄하지 않는 이유는 무엇입니까?
$ echo $PS1
[\[email protected]\h \W]\$
. 왜 PS1
변수가 표시되지 않습니까?
$ env | grep PS1
# No output here
PS1은 환경 변수가 아니기 때문에 (대개의 경우 일반적으로).
은 당신이 나열 할 수 있습니다 떠들썩한 인스턴스에 설정된 여러 가지 변수가 있습니다
$ set
BASH=/bin/bash
BASHOPTS=checkwinsize:cmdhist:…
BASH_ALIASES=()
BASH_ARGC=()
.
.
SHLVL=1
SSH_AGENT_PID=853
SSH_AUTH_SOCK=/tmp/ssh-Ofupc03xWIs7/agent.795
TERM=xterm-256color
을하지만, 그들 중 많은 사람들이 환경 변수가 없습니다. 예 :
$ echo "$PPID"
1062
$ env | grep PPID
export
을 사용하여 환경에 변수를 추가 할 수 있습니다. 그래서 PS1은 환경 변수로 설정 될 수있다 :
$ export PS1
$ env | grep PS1
PS1=\[email protected]\h:\w\$
그리고 변수는 내 보내지 않은 (단지 내 보내지 않은 변수의 값을 유지합니다) 선언과 수출 플래그 제거 될 수있다 :
을$ declare +x PS1
$ env | grep PS1
$ echo $PS1
\[email protected]\h:\w\$
또는, 더 크게, unset
변수를 보내고 기준 :
$ unset PS1
$ env | grep PS1
, declare
변수의 깃발을 인쇄하는 데 사용할 수 :
$ declare -p PS1
declare -- PS1="\${debian_chroot:+(\$debian_chroot)}\\[email protected]\\h:\\w\\\$ "
$ export PS1
$ declare -p PS1
declare -x PS1="\${debian_chroot:+(\$debian_chroot)}\\[email protected]\\h:\\w\\\$ "
변수를 내 보낸 후 -x
에 유의하십시오.
내 시스템에 PS1.set | grep PS1 PS1 = '\ h : \ W \ u \ $'. 또한 변수를 환경에 영구적으로 추가 할 수 있습니다. –
@terencehill 무슨 뜻인가요? PS1을 변수로 사용한다는 것입니까? 예,이 시스템에도 있습니다. 환경 변수로? 때로는 그럴 수도 있습니다. – sorontar
환경 변수가 시스템 시작시로드되는 변수라는 것을 의미합니다. –
"set | grep PS1"명령을 시도해야합니다. –