언젠가는 리눅스 경험이 약간의 추가 매력이 필요하다고 느낄 것입니다. 아마도 반복적인 작업을 만나거나 더 부드러운 명령 줄 인터페이스를 원했을 것입니다. 음, 놀랍게도? 여러분의 시스템은 그 열쇠를 가지고 있습니다: 홈 디렉토리에 조용히 자리한 .bashrc 파일!
이 튜토리얼에서는 기본적인 측면을 탐색하여 리눅스 시스템과 상호 작용하는 방식을 변형하세요. 명령 프롬프트를 사용자 정의하고 작업을 자동화하며 개인화된 바로 가기를 설정하는 등 올바른 길에 있습니다.
일상적인 작업에 작별을 고하고 더 효율적이고 즐거운 리눅스 경험을 만나보세요!
전제 조건
~/.bashrc 파일을 다루기 전에 다음 사항이 준비되어 있는지 확인하세요:
- A Linux distribution is installed on your machine – This tutorial uses Ubuntu 20.04 LTS, but any other distribution works.
- A non-root user with sudo privileges.
리눅스에서 Bash 실행 명령 (.bashrc) 파일이란?
리눅스의 ~/.bashrc 파일을 비밀 장난감 상자로 상상해보세요. 이 장난감 상자는 상자를 열면서 당신에게 선물하고 당신이 원하는 대로 좋아하는 장난감을 설치합니다.
그러나 ~/.bashrc는 비밀 파일이기 때문에 ls
명령을 실행할 때 나타나지 않습니다. 아니요, 숨겨진 것도 표시하지 않습니다. 아래에 표시된 것처럼 -la
매개변수를 사용하여 숨겨진 것을 표시하도록 지정하지 않는 이상요.
아래에서는 .bashrc 파일이 숨겨져 있습니다. 기타 숨겨진 파일들과 함께 나열됩니다.

빠른 명령 실행을 위한 사용자 정의 별칭 정의
A short definition wouldn’t cut into realizing the ~/.bashrc file’s role in customizing your Linux experience. So, how does this file work exactly? When you crack open that ~/.bashrc file, one of the powerful tricks it lets you achieve is defining custom aliases for your favorite commands.
예를 들어 시스템의 로컬 패키지 인덱스를 업데이트하기 위해 sudo apt-get update
를 입력하는 대신, 동일한 작업을 수행하는 별칭을 .bashrc 파일에 정의하십시오.
? 참고: 이 자습서는 시스템 구성과 같은 관리 작업을 설명하기 위해 루트 계정을 사용하여 명령을 실행합니다(권장되지 않음). 그러나 보안상의 이유로 유사한 작업을 시스템에서 수행할 때
sudo
권한이 있는 비루트 사용자를 사용하는지 확인하십시오.
명령에 대한 별칭을 정의하려면 다음 단계를 따르십시오:
1. 선호하는 편집기(nano
또는 vim
과 같은)를 사용하여 홈 디렉터리(~/
)의 .bashrc
파일을 엽니다.
? 비루트 계정을 사용하는 경우 상승된 권한이 필요한 명령을 실행할 때
sudo
를 앞에 추가하십시오.
2. 그런 다음 파일의 맨 아래로 스크롤하여 대상 명령(sudo apt-get update
)에 대한 alias
(즉, update
)를 정의합니다.
파일에 변경 사항을 저장하고 편집기를 닫으십시오.

3. 저장한 후 터미널에서 다음 명령을 실행하여 소스
명령을 사용합니다. ~/.bashrc
파일을. 이 명령은 터미널에 출력되지 않지만 변경 사항을 적용합니다.
4. 이제 정의한 update
별칭을 실행하고 해당 명령(sudo apt-get update
)이 실행되는지 확인하십시오.
아래 출력에서 볼 수 있듯이 update
별칭이 sudo apt-get update
명령을 실행하는 것처럼 작동하는 것을 확인할 수 있습니다. 키 스트로크 수가 적습니다.

향상된 생산성을 위한 함수 제작
복잡한 작업을 반복적으로 실행해야 할 때 별칭 정의만으로는 부족합니다. 하지만 걱정하지 마십시오. 함수가 문제의 해결책으로 나서 줄 것입니다.
단일 명령에 대한 단축키로만 기능하는 별칭과는 달리 함수는 복잡한 작업을 수행하는 복잡한 일련의 명령을 포함합니다.
함수가 어떻게 작동하는지 이해하려면 다음을 수행하십시오:
1. ~/.bashrc 파일에 아래에 있는 manage_package
라고 불리는 함수를 추가하십시오(임의의 이름).
이 함수를 실행하면 주어진 패키지가 설치되었는지 확인하고 해당 정보에 따라 패키지를 업데이트하거나 설치합니다.
이 함수는 패키지 이름만을 인수로 사용한다는 점을 기억하십시오.
2. 함수를 추가한 후 변경 사항을 저장하고 편집기를 닫은 다음, 변경 사항을 적용하기 위해 ~/.bashrc
파일을 source
합니다.
3. 소스가 되면, 터미널에서 아래와 같이 표시된대로 함수(manage_package
)를 호출한 후 원하는 패키지 이름(package-name
)을 지정합니다.
이 튜토리얼에서는 NGINX 패키지를 선택했지만, 원하는 패키지 이름으로 package-name
을 대체하십시오.
출력에서 확인할 수 있듯이, 이와 같은 기능은 패키지 관리를 쉽게 만들어줍니다. 무거운 작업을 자동으로 처리하여 원하는 패키지가 있는지 자동으로 판단해줍니다.

리눅스 터미널 및 쉘 프롬프트 (PS1) 사용자 정의
리눅스 터미널을 개인 작업 공간으로 생각하세요. 터미널을 사용자 정의하면 시각적으로 매력적이고 정보를 제공하는 환경으로 변환됩니다.
리눅스 터미널을 화려하게 꾸미는 데는 제한이 없습니다. 멋진 환영 메시지를 추가하거나 추가적인 효과를 위해 쉘 프롬프트를 조정할 수 있습니다.
리눅스 터미널을 사용자 정의하려면 다음을 진행하세요:
1. ~/.bashrc 파일의 맨 아래에 다음 줄을 추가합니다. 이 줄은 터미널 세션을 시작할 때마다 (인사) 메시지를 출력합니다.
2. 다음으로, Prompt String 1 (PS1
) 환경 변수를 수정합니다(있는 경우) 또는 다음 줄을 ~/.bashrc 파일에 추가합니다. PS1
변수는 주 프롬프트 문자열을 정확하게 제어합니다. 이는 쉘이 명령을 수용할 준비가 되었을 때 표시되는 주 프롬프트 (예: 사용자@리눅스:~#)를 의미합니다.
PS1
변수를 수정하면 쉘 프롬프트의 모양, 색상, 형식 및 표시 정보를 변경할 수 있습니다. 다음 식:
- 사용자 이름(
\u
)과 호스트 이름(\h
)을 밝은 녹색(32m
)으로 표시합니다. - 현재 작업 디렉토리(
\w
)를 밝은 파란색(34m
)으로 표시합니다. - 프롬프트 이후에 나오는 텍스트의 색 속성을 기본 색상(일반적으로 흰색)으로 재설정합니다(
\[\033[00m\]
). 이 재설정은 터미널 텍스트의 나머지 부분에 영향을 미치지 않도록 합니다.
3. 그런 다음 파일을 저장하고 닫은 후, 변경 사항을 적용하려면 source
명령을 사용하여 ~/.bashrc
파일을 실행하십시오.
아래에서 보듯이 웰컴 메시지는 소싱 직후 바로 나타나며, 정의한 대로 셸 프롬프트가 모양을 바꿉니다.

스크립트 실행: 경로가 없어도 괜찮습니다!
시스템을 향상하여 실행 가능한 명령에 대한 추가 디렉토리를 인식하면 작업 흐름을 간소화할 수 있습니다. 예를 들어 스크립트 실행하기를 생각해보면, 더 이상 긴 경로와 씨름할 필요가 없고, 순수한 편의성만 있습니다.
각 경로를 외우지 않고 스크립트를 실행하려면 다음 단계를 완료하십시오:
1. 스크립트를 저장하는 데 사용할 ~/scripts
(임의로)라는 디렉토리를 만들려면 다음 명령을 실행하십시오. (mkdir
)
2. 다음으로, ~/.bashrc 파일을 열고 끝에 다음 줄을 추가하여 시스템의 명령 검색 경로를 수정하십시오. 이 줄은 기존 PATH
변수에 ~/scripts
디렉토리를 앞에 추가합니다.
이 동작은 쉘에서 다른 곳의 동일한 이름을 가진 실행 파일보다 귀하의 스크립트를 우선시하는 것을 보장합니다.
3. 파일을 저장하고 닫은 다음 터미널을 다시 시작하지 않고 변경 사항을 적용하기 위해 해당 파일을 source
합니다.
4. 이후에 아래 명령을 실행하여 ~/scripts
디렉토리에 testscript
(임의의)라는 스크립트를 만듭니다.
이 명령은 출력이 없지만 이 스크립트를 실행 가능하게 만듭니다 (chmod
) 이는 터미널에 메시지를 출력합니다 (echo
)
5. 마지막으로 터미널에서 스크립트를 실행하여 (testscript
)합니다.
시스템은 작업 디렉토리와 관계없이 전용 ~/scripts 디렉토리에서 귀하의 스크립트를 실행합니다.
아래 출력은 스크립트 및 시스템 수정된 명령 검색 경로가 예상대로 작동함을 확인합니다.

결론
~/.bashrc 파일의 세계에서, 그 역할의 기본에 대해 여행하고 명령 별칭 및 기능 사용자 정의가 작동하는 방식을 배웠습니다. 이제는 Linux 터미널의 느낌을 개인화하는 것도 가능합니다.
외관 뿐만 아니라, 전체 경로를 지정하지 않고도 스크립트를 실행하는 편리함을 확장하여 시간을 절약하고 사용자 인터페이스를 향상시킵니다. 이러한 수정 사항은 Linux와의 상호 작용을 더 효율적이고 즐거운 것으로 만들어줍니다.
~/.bashrc 파일에 대한 이 장을 마칠 때, 리눅스의 참된 본질은 그 유연성과 제공되는 제어입니다. 여행은 계속됩니다. 그래서 ZSH의 개선 기능을 탐색하여 맞춤형 경험을 원하는 게 어떨까요?
ZSH 및 Oh My Zsh와 같은 프레임워크가 제공하는 테마와 플러그인의 바다로 빠져 보세요. 당신의 터미널이 더 생산적이고 시각적으로 매력적인 작업 공간으로 변화하는 것을 보세요!