리눅스 프롬프트(Prompt)란?

리눅스 셸에서 프롬프트는 CLI(커멘드 라인 인터페이스)의 명령줄 대기 모드를 뜻 합니다. 커맨드 프롬프트(command prompt) 또는 셸 프롬프트(shell prompt)로 불립니다.

Command Prompt는 명령을 입력/발행할 수 있는 터미널 에뮬레이터(CLI)의 입력 필드입니다.

참조: 내 Linux 명령 Prompt는 무엇을 알려줍니까?
리눅스 프롬프트(Prompt)

✅ 리눅스 프롬프트의 기본 이해

배포판이나 서비스에 따라 차이가 있을 수 있지만 기본 설정은 사용자의 이름, 호스트(서버 IP 주소), 현재 디렉토리, 권한으로 설정이 되어 있습니다.

[사용자 @ 호스트이름 : (작업 중인)디렉토리전체경로명] $
[root@ip-xxx-3x-xx-71 ~]#
  • 설명
  • 사용자: 현재 로그인한 사용자.
  • ‘@’: 사용자 이름과 호스트 이름 사이의 구분 기호입니다.
  • 호스트: 현재 사용중인 호스트(IP 주소)의 이름
  • ~ : 현재 로그인 된 사용자의 홈 디렉터리를 나타냅니다.
  • $: 일반 사용자 계정을 뜻하는 Prompt 기호.

프롬프트는 PS1(Prompt String 1)이라는 환경 변수에 의해 정의됩니다. echo 명령어로 PS1의 내용을 볼 수 있습니다.

echo $PS1
[\u@\h \W]\$

백슬래시(\)는 Shell 인용(Quoting)의 이스케이프 특수 문자이며 나머지는 설정 값 입을 알 수 있습니다.

✅ Prompt 창 변경하기

1. export 명령으로 일시 변경 후 테스트하기

export 명령어를 사용해서 Prompt 창을 일시적으로 변경하고 테스트를 할 수 있습니다. 서버 재 접속 시 Prompt 창은 초기화 되니 미리 테스트를 해 본 후 결정할 수 있습니다.

export PS1="[변경 할 Prompt]"
~]# export PS1="TestPrompt"
TestPrompt

2. 접속한 계정의 Prompt 창 변경

접속한 계정에 대한 Prompt 창 변경이 필요한 경우 .bashrc 파일에 내용을 추가 해 줄 수 있습니다.

vi ~계정명/.bashrc
export PS1="[변경 할 Prompt]"
# source 명령어로 적용.
source ~계정명/.bashrc

3. 모든 계정에 적용

/etc/profile.d/prompt.sh 파일을 수정(or 새로 생성)해서 영구 설정할 수 있습니다. 아니면 /etc/bashrc 파일에서 영구 설정이 가능합니다.

vi /etc/bashrc # 레드헷 계열  
vi /root/.bashrc  # 우분투 (Debian 계열)
export PS1="[변경 할 프롬프트]"
# 재부팅 또는 source 명령어로 적용.
source ~계정명/.bashrc

/etc/profile과 모든 사용자에게 적용되는 로그인 쉘환경 설정 파일입니다. /etc/bashrc는 비로그인 쉘bash 동작 설정 파일입니다. 대표적으로 프롬프트(PS1), alias 설정, bash 기능성 추가를 할 수 있습니다. 때문에 수정은 /etc/bashrc에서 적용하는게 보통입니다.

4. Prompt에 사용되는 이스케이프 코드

✅ 원하는 Prompt 수정

# 기본 세팅 값
echo $PS1
[\u@\h \W]\$
# 변경할 프롬프트 값
export PS1="\u@\@"
root@09:35 AM
export PS1="[\u@\t \W]\\$"

vi /etc/bashrc
export PS1="[\u@\t \W]\\$"
source /etc/bashrc


#################################################### 
    [ "$PS1" = "\\s-\\v\\\$ " ] && PS1=" \W]\\$"
# 초기 설정    [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
 
 # 우분투 (Debian 계열)
     PS1='${debian_chroot:+($debian_chroot)} \w]# '
#    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

최종 재설정 된 결과이며, PS1= 결과 값에 쌍따옴표[“]는 띄어쓰기도 적용이 가능합니다. \W는 bash가 특별히 해석하는 “프롬프트 이스케이프 시퀀스”입니다. \W는 “현재 디렉터리의 베이스명(마지막 폴더명)”을 출력하라고 bash가 약속한 약어입니다. ‘]’는 일반 텍스트, ‘\\$’에서 \는 \$를 출력하기 위한 이스케이프 시퀀스입니다.

Similar Posts

  • Linux란? 리눅스의 특징 및 리눅스의 종류

    목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창 변경3. 모든 계정에 적용4. Prompt에 사용되는 이스케이프 코드✅ 원하는 Prompt 수정■ ‘Linux’란? -simple ‘Linux’ 는 유닉스의 무료 버전(오픈소스)으로 이해하면 된다.  유닉스는1969년 벨 연구소에서 만들어졌습니다.  리눅스는 1991년 8월 리누스 토르발스가 어셈블리어로 리눅스 커널(kernel) 0.01 버전을 만들면서…

  • 리눅스 history 명령어

    리눅스 history 명령어는 이전에 명령어 목록을 확인하는 명령어로 리눅스 콘솔에 접속했을 때 자주 사용하는 명령어 중에 하나입니다. 보통 history만 입력해서 많이 사용하지만 보다 더 다양한 활용 방법에 대해서 알아 보겠습니다. 목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창 변경3. 모든 계정에 적용4. Prompt에…

  • [Linux] 리눅스 mv 명령어 사용법 및 mv 명령어 옵션

    리눅스 mv 명령어는 Move의 약자로 파일 또는 디렉토리를 이동하거나 이름을 변경할 때 사용하는 명령어입니다. 기본적인 리눅스 mv 명령어 사용법과 옵션 및 활용 방법에 대해 알아 보겠습니다. 목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창 변경3. 모든 계정에 적용4. Prompt에 사용되는 이스케이프 코드✅ 원하는…

  • SSL 인증서 설치(Sectigo)

    Apache 웹 서버에 Sectigo SSL 인증서 설치를 진행합니다. 테스트 URL로 서브 도메인 tozisin.com으로 하여 설치 테스트를 진행합니다. 설치할 인증서는 설치 후 30일 간 이용 가능한 ‘Free 30Days SSL‘ 설치를 진행합니다. AlmaLinux 9.4는 Rocky Linux 9.4와 완전히 호환되는 RHEL 계열의 클론입니다. 따라서 Apache 설치 및 모듈 구성 방식도 Rocky Linux와 동일합니다. Apache 버전은 2.4.57입니다….

  • 리눅스 grep 명령어

    리눅스 grep 명령어는 로그 파일과 같은 텍스트 파일과 아스키 파일에서 원하는 문자열을 찾을 때 사용되며, tail과 find 명령어를 파이프(|)와 결합해서 자주 사용하게 되는 명령어입니다. 목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창 변경3. 모든 계정에 적용4. Prompt에 사용되는 이스케이프 코드✅ 원하는 Prompt 수정✅…

  • Syslog란 무엇인가? | rsyslog.conf 설정

    Syslog는 원래 Sendmail의 일부로 개발되었으며, 이후 로그 관리의 편리함이 인식되면서 독립적인 표준으로 발전하게 되었습니다. System Logging의 약자로, 로그를 기록하고 관리하는 표준 서비스 또는 프로토콜을 의미합니다. 메일 서버, FTP 서버 등 다양한 프로그램이 생성하는 메시지를 중앙에서 수집하여 로그 파일로 저장하고, 이를 분석할 수 있도록 지원합니다. 시스템을 효율적으로 모니터링하고, 잠재적인 문제를 신속하게 식별 및 해결하며,…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 7   +   5   =