리눅스 프롬프트(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

  • yum 명령어 | 사용법 | 옵션 | yum-utils | 패키지 관리와 저장소 관리🔝

    레드햇 계열의 리눅스 배포판에서 사용하는 YUM 명령어는 패키지 관리(설치, 업데이트, 제거)를 하는데 사용하는 명령어입니다. yum은 기존 패키지 시스템인 RPM의 의존성 문제를 해결하기 위해 제공되는 도구이며, RPM에서 수행할 수 있는 많은 작업을 수행할 수 있습니다. 목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창 변경3. 모든…

  • 리눅스 FirewallD 설치 및 데몬 설정

    리눅스 FirewallD는 iptables의 체인과 정책이라는 규칙 대신 Zone과 Service를 대신 사용합니다. Firewalld를 사용하는 이유는 iptables의 규칙이 복잡하기 때문에 iptables 대신 사용할 수 있도록 하기 위함입니다. 목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창 변경3. 모든 계정에 적용4. Prompt에 사용되는 이스케이프 코드✅ 원하는 Prompt…

  • df 명령어

    df(Disk Free)는 마운트 된 장치 전체 용량, 사용 용량, 여유 용량을 확인할 수 있습니다. 파일 시스템(Filesystem), 디스크 크기(Size), 사용량(Used), 여유공간(Avail), 사용률(Use%), 마운트지점(Mounted on)을 순서로 확인할 수 있습니다. 목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창 변경3. 모든 계정에 적용4. Prompt에 사용되는 이스케이프 코드✅…

  • 리눅스 less 명령어 사용법

    리눅스 less 명령어는 텍스트 파일을 볼 때 사용하는 명령어입니다. less 명령어의 특징은 vi 명령어가 파일 실행 시 전체 파일을 읽어야 하고 txt 파일 크기가 클 경우 읽는데 시간이 걸립니다. 또한 vi 명령어는 파일 편집 명령어입니다. 목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창…

  • bash: 셸 따옴표 및 셸 쌍따옴표

    bash 및 셸 프로그램에서 명령어를 치환하는데 ‘$’ 기호와 소괄호'()’를 사용하는 대신 따옴표 기호도 사용합니다. 치환은 수식의 어떤 부분에 그와 대등한 무언가로 바꿔 넣는 행위입니다. ‘셸 따옴표’와 ‘셸 쌍따옴표’의 기본 공통 사항은 확장을 제어하는데 활용된다는 것입니다. 여기에서 차이점은 셸 따옴표는 모든 확장을 제어하지만 셸 쌍따옴표는 3개의 기호를 제외하게 됩니다. 셸 쌍따옴표 제외 기호: $…

  • 리눅스 uniq 명령어

    리눅스 uniq 명령어는 “unique”의 약자이며, 텍스트 파일에서 중복된 행을 제거하고 하나의 행만 출력하는데 사용됩니다. 중복된 텍스트 데이터를 제거하고 몇 번의 반복이 있었는지 등을 확인할 때 매우 유용하게 사용할 수 있습니다. 목차✅ 리눅스 프롬프트의 기본 이해✅ Prompt 창 변경하기1. export 명령으로 일시 변경 후 테스트하기2. 접속한 계정의 Prompt 창 변경3. 모든 계정에 적용4. Prompt에…

답글 남기기

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

Prove your humanity: 8   +   1   =