명령을 입력하면 환경 변수 중 하나도 인쇄됩니다.
[root@appdynamics home]# ls
ls
192.168.71.2 192.168.71.50 karti lost+found postgres
printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"
모든 명령을 인쇄하는 문제를 어떻게 해결할 수 있나요?
쉘 유형: 배쉬
이는 프롬프트 명령 및 프롬프트 변수의 출력입니다.
[root@appdynamics home]# echo $PROMPT_COMMAND
printf "\033]0 %s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"
[root@appdynamics home]# echo $promptvars
printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"
/etc/bashrc:
# are we an interactive shell?
if [ "$PS1" ]; then
if [ -z "$PROMPT_COMMAND" ]; then
case $TERM in
xterm*)
if [ -e /etc/sysconfig/bash-prompt-xterm ]; then
PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm
else
PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
fi
;;
screen)
if [ -e /etc/sysconfig/bash-prompt-screen ]; then
PROMPT_COMMAND=/etc/sysconfig/bash-prompt-screen
else
PROMPT_COMMAND='printf "\033]0;%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
fi
;;
*)
[ -e /etc/sysconfig/bash-prompt-default ] && PROMPT_COMMAND=/etc/sysconfig/bash-prompt-default
;;
esac
fi
# Turn on checkwinsize
답변1
printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"
이 명령을 사용하면 이런 일이 발생합니다 bash -v
. 이를 제거하려면 exit
명령을 실행하십시오.
답변2
프롬프트 설정에 문제가 있는 것 같습니다. 쉘 구성 파일을 확인하십시오. .bashrc
bash, .kshrc
ksh, .zshrc
zsh(항상 홈 디렉토리에 있음)에서 작동합니다. 구성 은 /etc/bash.bashrc
. 또는 또는 /etc/zshrc
와 같이 구성이 잘못되었을 수도 있습니다 .~/.profile
~/.bash_profile
/etc/profile
표시되는 프롬프트는 프롬프트를 구성하기 위해 셸에서 실행하는 명령처럼 보입니다. 어쩌면 이것이 bash가 PS1='printf …'
의미하는 것일 수도 있습니다. 누군가가 쓴 것입니다 PROMPT_COMMAND='printf …'
. 그러나 이것은 많은 가능성 중 하나일 뿐이다. PS1
변수가 정의되는 방법과 PROMPT_COMMAND
bash의 변수 및 옵션 과 같은 기타 셸 관련 설정을 보려면 구성 파일을 확인하세요 .promptvars
알아낼 수 없다면 쉘 구성 파일을 게시하십시오. 그리고 어떤 쉘을 사용하고 있는지 꼭 표시해 주세요! 귀하의 구성이 정확히 무엇인지 알려주지 않으면 우리는 추측만 할 수 있습니다.