개요
whoami는 'Who am I?'라는 문장을 줄인 명령어로, 현재 셸(shell)에서 명령을 실행하고 있는 사용자의 계정 이름을 출력합니다. 특히 `sudo` 명령어를 사용하거나, 다른 사용자로 전환(`su`)했을 때 현재 어떤 권한으로 명령어를 실행하고 있는지 명확하게 파악할 수 있도록 도와줍니다. 이 명령어는 `$EUID` 환경 변수의 값을 기반으로 사용자 이름을 출력하며, `id -un` 명령과 동일한 결과를 반환합니다.
주요 특징
whoami 명령어의 주요 특징은 다음과 같습니다.
- 현재 로그인된 사용자의 이름을 출력합니다.
- 로그인한 실제 사용자(`logname`)와는 다른, 유효한 사용자 ID를 출력합니다.
- 스크립트에서 현재 실행 중인 사용자를 확인하는 데 자주 사용됩니다.
- 옵션이 거의 없는 간단한 명령어입니다.
whoami와 who의 차이점
whoami와 who는 모두 사용자 정보를 출력하지만, 제공하는 정보의 범위가 다릅니다.
- whoami: 현재 명령어를 실행하고 있는 사용자의 이름만을 출력합니다.
- who: 현재 시스템에 로그인되어 있는 모든 사용자의 이름, 로그인 시간, 터미널 정보 등을 출력합니다.
주요 옵션
whoami 명령어는 매우 단순하여, 주로 `-h`나 `-v` 같은 기본적인 도움말 옵션만 사용됩니다.
1) 도움말
생성된 명령어:
명령어를 조합해 보세요.
설명:
`whoami` 명령어를 실행합니다.
위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.
사용 예시
whoami 명령어의 다양한 사용 예시를 통해 기능을 익혀보세요.
현재 사용자 이름 확인
whoami
현재 로그인된 사용자 이름을 출력합니다.
루트 사용자로 전환 후 확인
whoami
sudo whoami
`sudo` 명령으로 루트 권한을 획득한 후 `whoami`를 실행하면, 현재 명령을 실행하고 있는 유효한 사용자 이름이 `root`로 출력됩니다.
다른 사용자로 전환 후 확인
whoami
su guest
whoami
`su` 명령으로 다른 사용자인 `guest`로 전환한 후 `whoami`를 실행하면 `guest`로 출력됩니다.
설치
whoami는 `coreutils` 패키지의 일부로, 대부분의 리눅스 배포판에 기본적으로 포함되어 있습니다. 별도의 설치가 필요하지 않습니다.
팁 & 주의사항
whoami 명령어 사용 시 유의할 점들을 정리했습니다.
팁
- 스크립트에서 현재 사용자가 `root`인지 확인하는 용도로 `if [ "$(whoami)" == "root" ]; then ... fi` 와 같이 사용할 수 있습니다.
- `whoami`는 `id -un`과 동일한 정보를 출력합니다. `id` 명령어는 사용자의 UID, GID 등 더 상세한 정보를 제공합니다.