리눅스에서 프롬프트를 바꾸는 방법?


16

기본 프롬프트는

root@monu dev]#

"root @ monu"부분을 변경하고 원하는 이름을 지정할 수 있습니까?

답변:


23

이것은 환경 변수를 변경하여 변경됩니다 PS1.

다음의 현재 값을 볼 수 있습니다 PS1.

root@monu dev# echo $PS1

다음과 같은 값을 볼 수 있습니다 \u@\h \w\$.

  • \u : 사용자 이름
  • \h : 호스트 이름
  • \w : 현재 작업 디렉토리
  • \$: #루트 사용자를위한 $기호, 다른 사용자를위한 기호

변경 사항을 영구적으로 유지하려면 사용자가 로그인 할 때마다 실행되므로 PS1in 의 값을 변경하는 스크립트를 추가해야합니다 ~/.bashrc.


1
~ / .bashrc 파일에도 넣는 것을 잊지 마십시오. 예 :`PS1 = "myname \\ $" '.
Keith

5
~ / .bashrc는 사용자가 로그인 할 때마다 실행 되지 않습니다 .“로그인 쉘이 아닌 대화식 쉘이 시작될 때 bash는 ~ / .bashrc에서 해당 파일이있는 경우 명령을 읽고 실행합니다.”– man bash / INVOCATION
manatwork

그것들을 변경하면 변경할 수 있습니다. ?
tshepang

자세한 내용은 PROMPTING섹션을 참조하십시오 man bash.
Francesco Turco

예, 그러나 정확히 무엇입니까? 몇 가지 예를 들어 줄 수 있습니까?
Peter Mortensen

5

이것은 쉘에 따라 다릅니다. 중요한 참고 사항으로, 루트 계정을 개인 계정으로 사용 해서는 안됩니다 . 일반 사용자를 작성하고 sudo에 대한 액세스를 설정하십시오. 이 작업을 수행하는 방법에 대해서는 배포 설명서를 확인하십시오.

zsh에서는 다음과 같이 PROMPT 변수를 설정해야합니다.

PROMPT='%{ESC[38;5;24m%};%{ESC[0m%} '

zshell은 다른 많은 옵션을 제공 하며 이것은 최소한의 프롬프트입니다.

bash에서는 다음과 같이 설정할 수 있습니다.

local ROOK="\[\033[38;5;24m\]"
local DEFAULT="\[\033[0;39m\]"
PS1="${ROOK}\$${DEFAULT} "

두 경우 모두 256 색상 가능 터미널이 있습니다. 매뉴얼 페이지는 많은 도움이 될 것입니다 ( man bash또는 man zsh).


2
여기서는 루트 계정 사례를 정확하게 언급했습니다 . IMO 는 개인 계정 으로 사용되지 않아야 합니다 (풋 프린트가 매우 적은 임베디드 시스템 제외).
rozcietrzewiacz
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.