제 생각에는RHEL/CentOS 7.6에서 구현됨
이 작업을 수행 su
하고 루트가 될 때마다 해당 세션 동안 해당 터미널의 터미널 프롬프트 색상이 빨간색으로 변경되기를 원합니다 su
. 현재 상태로 돌아가려면 Enter를 누르 exit
세요. 프롬프트 색상이 이전 색상(검은색)으로 돌아가기를 원합니다.
네트워크를 통해 로그인하기 위해 퍼티를 사용하는 SSH 창과 동일합니다. 처음에는 다음과 같이 SSH로 로그인합니다.사용자그리고 기본 흰색 쉘 프롬프트가 있습니다. su
루트 작업을 수행할 때 프롬프트가 빨간색으로 바뀌기를 원하고, 종료할 때 프롬프트가 흰색으로 돌아가기를 원합니다.
지금까지 이 작업을 수행했지만 100% 작동하지 않습니다. exit
su 세션에 들어가고 나가고 원래 상태로 돌아온 후에도 색상이 빨간색으로 유지됩니다.사용자.
/etc/profile.d/red_root_prompt.sh
if [ $UID -eq 0 ]; then
PS1="\e[31m[\u@\h \W]# "
else
PS1="[\u@\h \W]# "
내가 원하는 대로 일이 이루어지도록 하는 방법이 있나요? 나는 bash 쉘에만 그것을 원합니다.
답변1
추가하거나 /etc/bash.bashrc
편집 할 수 있습니다./etc/profile/
force_color_prompt=yes
if [ "$LOGNAME" = root ] || [ "`id -u`" -eq 0 ] ; then
PS1='\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;34m\]#\033[00m\] '
else
PS1='\u@\h:\w\$ '
fi
이와 유사한 프롬프트가 표시됩니다. 흰색 배경을 사용하는 경우 마지막 부분을 명령 텍스트가 보이도록 #
변경 하세요. \033[01;30m\]
참고용으로 두 번째 예시로 포함하겠습니다.
\etc\bash.bashrc
또한 ~/.bashrc 에 다음을 추가하면 :
export col_white='\033[00m'
export col_black='\033[01;30m'
export col_red='\033[01;31m'
export col_green='\033[01;32m'
export col_yel='\033[01;33m'
export col_blue='\033[01;34m'
다음 작업을 수행할 수 있습니다.
$ echo -e $col_red red $col_blue blue $col_yel yellow $col_green green
red blue yellow green
출력은 다음과 같습니다.
편집하다: 어떤 이유로 변수 확장을 프롬프트로 사용하면 캐리지 리턴이 중단됩니다(변수의 길이에 고정합니다. 즉, 에 해당하는 n echo $col_blue
공백을 앞으로 밀어냅니다 echo $col_white
. 지금까지 이 시점에서 좋은 해결책을 찾지 못했지만 다음을 사용하여 위의 변수 대체를 사용하지 않고 적절한 대괄호를 사용하면 이 문제를 해결할 수 있습니다.
if [ "$LOGNAME" = root ] || [ "`id -u`" -eq 0 ] ; then
PS1="$col_red\u@\h:$col_purple\w$col_green# $col_white"
else
PS1="\u@\h:$col_blue\w$col_yel\$ $col_white "
fi
답변2
/etc/profile.d
RHEL/CentOS 7.x의 경우 이와 같은 사용자 정의 콘텐츠가 에 있어야 한다고 생각합니다 /etc/bashrc.local
. 이렇게 하면 유사한 콘텐츠가 /etc/bashrc
변경되거나 교체될 때 업데이트 후에도 모든 사용자 정의가 유지됩니다.
/etc/profile.d/
RHEL/Centos 7의 경우 해당 쉘 아래에 해당 접미사가 있는 파일을 배치하기 만 하면 된다고 생각합니다 .
그래서 나는 /etc/profile.d/redrootprompt.sh
단지
if [ "$LOGNAME" = root ] || [ "`id -u`" -eq 0 ] ; then
PS1='[\[\033[01;31m\]\u@\h\[\033[00m\]:\w] : '
else
PS1='[\u@\h \w] : '
fi
제가 원했던 룩에 딱 맞았네요
검정색 배경과 흰색 텍스트가 있는 퍼티 창에서도 작동하지만 루트에 고소한 후 빨간색으로 바뀌고 종료 시 흰색으로 돌아갑니다.