macOS 터미널에서 zsh 프롬프트를 사용자 정의하는 방법

주요 시사점

  • macOS를 사용하면 터미널에서 zsh 프롬프트를 사용자 정의하여 눈에 띄고 선호도에 맞게 만들 수 있습니다.
  • zsh 프롬프트에서 원하는 모든 변경 사항과 설정을 저장하려면 .zshrc 프로필을 만듭니다.
  • %n(사용자 이름), %m(Mac의 모델 이름), %W(날짜) 및 %T(시간)와 같은 변수에 대해 원하는 값을 추가하여 zsh 프롬프트를 수정합니다.

zsh 프롬프트에서 다른 색상을 사용하거나, 추가 세부 정보를 표시하거나, 공간을 최대한 활용하기 위해 최소한의 모양을 채택하려는 경우 macOS를 사용하면 됩니다. 배경에 관계없이 눈에 띄게 만들기 위해 터미널에서 zsh 프롬프트를 사용자 정의하는 방법을 알아보세요.

zsh 프롬프트의 기본

Mac에서 터미널 앱을 열면 마지막 로그인 및 명령 프롬프트와 같은 몇 가지 유용한 정보가 표시됩니다. 프롬프트는 일반적으로 기본적으로 다음과 같습니다.

 Last login: Wed Feb 3 22:00:40 on console
alvin@MacBook-Air ~ %

zsh 프롬프트는 사용자 이름과 MacBook Air, MacBook Pro, Mac mini 등과 같은 컴퓨터 모델로 구성된 텍스트 문자열을 표시합니다. 물결표(~)는 홈 디렉터리에서 프롬프트의 위치를 ​​나타냅니다.

터미널을 통해 파일 시스템의 다른 디렉터리로 이동하면 물결표 대신 현재 디렉터리의 이름이 표시됩니다.

모든 설정을 저장하기 위한 Z 셸 프로필 생성

일반적으로 기본 모양을 변경하려면 시스템 파일을 수정해야 합니다. 이는 macOS 업데이트가 모든 시스템 파일을 기본값으로 재설정하고 모든 변경 사항을 잃게 되기 때문입니다. 따라서 zsh 프롬프트에 원하는 모든 변경 사항과 설정을 저장하기 위해 zsh 프로필에 대한 특정 설정 파일(dotfile이라고 함)을 만들 수 있습니다.

macOS에서는 기본적으로 이 도트파일을 찾을 수 없으므로 직접 만들어야 합니다. zsh 프롬프트의 모양과 동작과 같은 모든 설정을 저장하려면 새 .zshrc 프로필을 생성하는 것이 좋습니다. zsh 프로필(dotfile)을 만드는 방법은 다음과 같습니다.

  macOS 부팅 모드 및 시작 키 조합에 대한 빠른 가이드
  • 터미널 앱을 엽니다.
  • 다음 명령을 입력하고 Return 키를 누르십시오.
     touch ~/.zshrc 
  • touch 명령은 .zshrc 프로필 파일이 아직 없는 경우에만 생성합니다. 이미 존재하는 경우 명령은 아무 작업도 수행하지 않습니다.

    그러면 사용자 계정의 홈 디렉터리에 .zshrc 프로필이 생성됩니다. Mac에서 숨겨진 시스템 파일 보기를 활성화한 경우 Finder의 /User// 경로에서 볼 수 있습니다.

    그 후에는 터미널을 시작할 때마다 로그인하지 않은 대화형 쉘에 zsh 프로필을 사용할 수 있습니다. 그러나 .zprofile 및 .zlogin과 같은 다른 로그인 관련 파일이 없는 경우 로그인 셸에만 사용됩니다.

    터미널에서 zsh 프롬프트 사용자 정의

    일반적으로 기본 zsh 프롬프트에는 사용자 이름, 컴퓨터 이름, 사용자 홈 디렉터리에서 시작하는 위치와 같은 정보가 포함됩니다. 이러한 세부 정보는 /etc/zshrc 위치에 있는 zsh 셸의 시스템 파일에 저장됩니다.

     PS1="%n@%m %1~ %#" 

    이 변수 문자열에서:

    • %n은(는) 귀하의 계정 사용자 이름입니다.
    • %m은 Mac의 모델 이름입니다.
    • %1~은 현재 작업 디렉터리 경로를 의미하며, 여기서 ~는 $HOME 디렉터리 위치를 제거합니다.
    • %#은 쉘이 루트(관리자) 권한으로 실행 중인 경우 프롬프트에 #이 표시되고 그렇지 않은 경우 %가 표시됨을 의미합니다.

    기본 zsh 프롬프트를 변경하려면 프롬프트가 기본값과 다르게 표시되도록 관련 값을 추가해야 합니다.

    이에 대한 방법은 다음과 같습니다. 터미널을 열고 다음 명령을 입력한 후 Return 키를 누르십시오.

     nano ~/.zshrc 

    .zshrc 프로필 파일이 이전에 존재했다면 비어 있지 않을 가능성이 있습니다. 하지만 위의 touch 명령을 실행할 때 존재하지 않았다면 비어 있을 것입니다. PROMPT=’…’ 또는 PS1=’…’ 텍스트가 있는 새 줄을 추가하고 타원 안에 관련 값을 포함할 수 있습니다.

    zsh 프롬프트를 간단히 수정하려면 .zshrc 프로필에 다음 값을 입력하면 됩니다.

     PROMPT='%n:~$' 

    Ctrl + O를 눌러 파일 변경 사항을 확인한 다음 Ctrl + X를 눌러 nano 편집기를 종료하세요.

    Cmd + T를 눌러 새 터미널 창을 열어 방금 변경한 내용을 확인하고 확인하세요. 새로운 zsh 프롬프트에는 Mac의 사용자 이름, 홈 디렉터리 및 끝에 $ 기호가 표시됩니다. 터미널에서 변수 간격을 선호하는 경우 위의 PROMPT 변수에 %n, ~ 및 $ 사이에 간격을 추가할 수 있습니다.

      Windows, macOS 및 Chrome OS를 위한 15가지 최고의 스크린 레코더

    사용자 정의 사용자 이름을 갖고 싶다면 %n을 원하는 항목으로 바꾸세요. 예는 다음과 같습니다.

     PROMPT='customusername~$' 

    이제 새 터미널 창을 열면 다음이 표시됩니다.

    다른 매개변수를 수동으로 변경하려면 위 PS1 변수의 형식을 사용하여 기본 변수를 바꾸면 됩니다. 원하는 대로 zsh 프롬프트에서 정보를 포함하거나 제거할 수 있습니다.

    너무 복잡해 보인다면 다음과 같은 사이트를 이용하세요. Zsh 프롬프트 생성기 Z 쉘을 사용자 정의하는 데 도움이 됩니다.

    zsh 프롬프트에 날짜 및 시간 추가

    사용자 이름 외에도 현재 날짜나 시간을 추가할 수 있으므로 해당 정보를 확인하기 위해 활성 터미널 창에서 눈을 떼지 않아도 됩니다.

    터미널을 시작하고 .zshrc 프로필을 엽니다.

     nano ~/.zshrc 

    프롬프트에 날짜를 포함하려면 날짜에 %D를 사용하여 yy-mm-dd 형식으로 표시하거나 %W를 사용하여 mm/dd/yy 형식으로 표시할 수 있습니다. 그러면 다음과 같은 새 프롬프트가 나타납니다.

     PROMPT='%n:%W:~$' 

    시각적인 구분을 추가하기 위해 위의 PROMPT 변수에 콜론(:)을 사용했지만 공백이나 다른 어떤 것도 사용할 수 있습니다. 예를 들어, 시간과 현재 디렉터리를 구분하기 위해 보다 큼 기호(>)를 사용합니다.

    zsh 프롬프트에 시스템 시간을 포함하려면 24시간 형식의 현재 시간에 %T를 추가하고, 12시간 형식으로 표시할 시간에 %t를 추가하거나 %*를 사용하여 24시간 형식으로 시간을 표시합니다. -초와 함께 시간 형식입니다.

     PROMPT='%n@%T>~$' 

    zsh 프롬프트 오른쪽에 날짜 및 시간 표시

    zsh 프롬프트 오른쪽에 정보를 표시하려면 zshrc 파일에 RPROMPT 변수를 추가해야 합니다. 예를 들어 날짜와 시간을 추가하려면 다음을 입력합니다.

    RPROMPT='%D @ %T'

    이제 프롬프트는 다음과 같이 표시됩니다.

    zsh 프롬프트의 텍스트에 색상 추가

    색상으로 터미널 앱을 수정하는 것 외에도 Mac에서 zsh 프로필의 텍스트에 색상을 추가하여 멋진 시각적 휴식을 취할 수 있습니다. 터미널을 시작하고 .zshrc 프로필을 엽니다.

     nano ~/.zshrc 

    Z 셸은 배경을 보완하기 위해 프롬프트 텍스트에 색상과 회색 음영을 지원합니다. 검정색, 흰색, 노란색, 녹색, 빨간색, 파란색, 청록색, 자홍색 중에서 전경(텍스트) 색상을 선택할 수 있습니다. 사용 방법은 다음과 같습니다.

     PROMPT='%F{cyan}%n%f:~$' 

    특정 zsh 색상 음영을 선택하려면 터미널이 지원하는 256개의 8비트 색상 중에서 선택할 수 있습니다. 색상의 수치를 사용하는 방법은 다음과 같습니다.

     PROMPT='%F{51}%n%f:~$' 

    색상을 지정하려는 관련 텍스트 사이에 %F 및 %f 기본 전경색 변수를 배치해야 합니다.

      macOS Sonoma에서 Apple의 게임 모드는 어떻게 작동합니까?

    zsh 프롬프트에 시각 효과 추가

    프롬프트의 텍스트 색상을 지정하는 것만으로는 충분하지 않은 경우 zsh 프롬프트를 강조 표시하여 텍스트 벽 가운데서 눈에 띄게 만들 수 있습니다. 우선, zsh 프롬프트를 굵게 표시할 수 있습니다.

     PROMPT='%B%F{51}%n%f%b:~$' 

    해당 텍스트 사이에 시작 부분에 %B를 추가하고 끝에 %b를 넣으면 굵게 표시됩니다.

    마찬가지로 시작 부분에 %S를 넣고 끝 부분에 %s를 넣어 텍스트를 강조 표시할 수 있습니다. 강조 표시는 %S 및 %s 변수 사이에 표시되도록 선택한 것과 동일한 색상을 갖습니다.

     PROMPT='%S%F{51}%n%f%s:~$' 

    zsh 프롬프트의 텍스트에 밑줄을 긋을 수도 있습니다. 프롬프트에 밑줄을 추가하려면 관련 텍스트 시작 부분에 %U 변수를 포함하고 끝에 %u 변수를 포함할 수 있습니다.

     PROMPT='%U%F{51}%n%f%u:~$' 

    zsh 프롬프트에서 마지막 로그인 세부 정보 제거

    터미널 앱에서 마지막 로그인 시간을 표시하는 맨 위 줄을 숨기거나 비활성화하면 zsh 프롬프트가 더 깔끔하게 보일 수 있습니다. 다음 명령을 사용하여 해당 정보를 숨길 수 있습니다.

     touch ~/.hushlogin 

    다음에 터미널을 열면 zsh 프롬프트 위에 아무 것도 표시되지 않습니다.

    zsh 사용자 정의 재설정

    새로 시작해야 하는 경우 PROMPT 또는 PS1 변수를 기본값으로 설정하면 됩니다.

     PROMPT="%n@%m %1~ %#" 

    RPROMPT를 사용하여 zsh 프롬프트 오른쪽에 정보를 추가한 경우 .zshrc에서 삭제하세요.

    또는 .zshrc 파일에서 PROMPT/PS1 및 RPROMPT 변수를 안전하게 삭제할 수 있습니다. .zshrc 파일의 설정은 현재 사용자 프로필에만 적용되므로 걱정하지 마십시오. 두 개를 삭제하면 /etc/zshrc에 있는 Z 쉘의 시스템 파일에 저장된 기본 설정이 사용됩니다.

    이제 zsh 프롬프트를 사용자 정의하는 방법에 대한 전체 세부 정보를 얻었으므로 조금 실험하여 자신만의 것으로 만들어 보세요. 굵게 표시하고, 밑줄을 긋고, 단축할 수 있으며 더 많은 정보를 포함할 수도 있습니다. 변경 사항이 마음에 들지 않으면 언제든지 신속하게 기본 모양으로 되돌릴 수 있습니다.