macOS 터미널에서 ll을 입력하면 zsh: command not found: ll 오류가 나오는 이유는, macOS 기본 셸인 zsh에 ll이 명령어로도 별칭으로도 등록돼 있지 않기 때문입니다.
리눅스 배포판 상당수는 ll을 ls -l 계열의 별칭으로 미리 넣어 배포하지만, macOS는 Catalina(10.15)에서 기본 셸이 bash에서 zsh로 바뀐 뒤에도 이 별칭을 제공하지 않습니다.

해결은 간단합니다. ~/.zshrc 파일에 alias ll='ls -al' 한 줄을 추가하고 source로 다시 불러오면, 그때부터 ll이 파일 목록을 상세하게 출력하는 명령어처럼 동작합니다. 아직 bash를 쓰고 있다면 동일한 방식으로 ~/.bash_profile에 넣어야 합니다.
1. alias 등록으로 ll 명령어 설정하는 방법
맥에서 ll 명령어를 쓰려면, zsh 설정 파일인 ~/.zshrc에 별칭 한 줄을 등록합니다. 별칭을 등록해두면 새 터미널 창을 열 때마다 zsh가 이 파일을 자동으로 읽어 ll을 매번 인식합니다.
zsh에서 ll 별칭 등록하기

터미널에 아래 두 줄을 순서대로 입력합니다.
echo "alias ll='ls -al'" >> ~/.zshrc
source ~/.zshrcecho ... >> ~/.zshrc 명령어는 alias ll='ls -al' 문장을 설정 파일 맨 끝에 덧붙이고 source ~/.zshrc 명령어는 방금 바뀐 설정을 지금 열려 있는 창에 즉시 반영합니다.

파일을 직접 열어 편집해도 됩니다. nano ~/.zshrc로 편집기를 실행한 뒤, 맨 아래에 alias ll='ls -al'을 입력하고 control + O로 저장, control + X로 종료합니다.
파일 용량을 사람이 읽기 쉬운 단위로 보고 싶다면 alias ll='ls -lah'처럼 -h 옵션을 함께 넣습니다. 이렇게 하면 파일 크기가 바이트 숫자 대신 4.0K, 12M 같은 형태로 표시됩니다.
bash를 쓴다면 .bash_profile에 등록하기
현재 셸이 zsh인지 bash인지는 echo $SHELL로 확인합니다. 출력이 /bin/bash라면 zsh가 아니라 bash를 쓰는 상태입니다.
이때는 설정 파일이 다릅니다. macOS 터미널은 창을 열 때마다 로그인 셸로 시작하므로, bash 사용자는 ~/.bash_profile에 별칭을 등록합니다.
echo "alias ll='ls -al'" >> ~/.bash_profile
source ~/.bash_profilell 명령어가 등록 됐는지 확인하기

별칭이 제대로 적용되었는지는 alias ll 명령어로 확인합니다.
ll='ls -al'이 그대로 출력되면 등록에 성공한 것입니다. 새 터미널 창을 열고 ll을 입력했을 때 파일 목록이 상세 형식으로 나오면 설정이 끝난 상태입니다.
2. 터미널 ll alias 설정의 작동 원리와 ls 옵션 이해
alias ll='ls -al' 한 줄이 어떻게 ll을 동작하게 만드는지는 세 요소, alias, .zshrc, source로 나눠 보면 이해가 쉽습니다.
각각이 맡은 역할이 다르기 때문에, 이 중 하나라도 빠지면 ll이 인식되지 않거나, 등록한 별칭이 다음 창에서 사라집니다. 그리고 ls 뒤에 어떤 옵션을 붙이느냐에 따라 ll의 출력 형태도 달라집니다.
alias는 명령어에 붙이는 별칭
alias는 긴 명령어에 짧은 이름을 붙여 대신 부르게 하는 zsh 기능입니다.
ll은 그 자체로 존재하는 명령어가 아니라, ls -al을 가리키도록 사용자가 지정한 별칭입니다. 그래서 별칭을 등록하기 전에는 command not found가 나오고, 등록한 뒤에는 ll이 곧 ls -al 실행으로 이어집니다.
.zshrc는 zsh가 시작될 때 읽는 설정 파일
.zshrc는 zsh 셸이 실행될 때마다 자동으로 읽는 사용자 설정 파일입니다.
별칭, 환경 변수, 경로 설정을 여기에 적어두면 터미널 창을 새로 열 때마다 다시 적용됩니다. ll 별칭을 이 파일에 저장하기 때문에 한 번 등록으로 재부팅 뒤에도 계속 유지됩니다.
source는 지금 열린 창에 즉시 반영
.zshrc는 원래 새 창이 열릴 때만 로딩됩니다. 이미 열려 있는 창에는 방금 추가한 별칭이 아직 없는 상태입니다.
source ~/.zshrc는 이 파일을 현재 창에서 한 번 더 실행해, 새 창을 열지 않고도 별칭을 바로 쓸 수 있게 합니다.
source 대신 터미널을 껐다 켜도 같은 결과가 됩니다.
ls 옵션이 만드는 출력 차이
ll이 실제로 실행하는 것은 ls에 옵션을 붙인 명령입니다. 어떤 옵션을 넣느냐에 따라 출력이 달라지므로, 자주 쓰는 옵션의 의미는 알아두면 별칭을 원하는 형태로 바꿀 수 있습니다.
| 옵션 | 의미 |
|---|---|
-l | 권한, 소유자, 크기, 수정 날짜를 한 줄씩 상세하게 표시 |
-a | .으로 시작하는 숨김 파일까지 모두 표시 |
-h | 파일 크기를 K, M, G 단위로 사람이 읽기 쉽게 표시 (-l과 함께 사용) |
-F | 폴더 뒤에 /, 실행 파일 뒤에 *를 붙여 유형을 구분 |
-G | 폴더, 파일, 심볼릭 링크를 종류별로 다른 색으로 표시 |

ls -al은 숨김 파일을 포함한 상세 목록을, ls -lah는 여기에 읽기 쉬운 용량 표기를 더한 결과를 출력합니다.
맥의 ls는 기본이 흑백으로 출력되어 리눅스처럼 폴더와 파일을 색으로 구분하려면 -G 옵션을 넣어야 합니다.
리눅스 배포판의 기본 ll에 가깝게 맞추려면 alias ll='ls -alFG'처럼 옵션을 조합해 상세 목록, 유형 기호, 색상을 한 번에 켤 수 있습니다.
macOS의 ls 옵션 전체 목록은 Apple 터미널 사용 설명서에서 확인할 수 있습니다.
마치며
ll이 맥에서 안 되는 것은 명령어가 없어서가 아니라, 리눅스와 달리 zsh에 별칭이 기본 등록돼 있지 않아서입니다.
~/.zshrc에 alias ll='ls -al' 한 줄을 넣고 source로 불러오면 리눅스와 똑같이 ll을 쓸 수 있고, 이 별칭은 파일에 저장되므로 재부팅 뒤에도 그대로 사용할 수 있습니다.
용량 표기가 필요하면 -h를, 유형 구분이 필요하면 -F를 옵션에 더해 사용자가 원하는 방식대로 조정하면 됩니다.
FAQ
ll 별칭이 특정 창에서만 동작하고 새 창에서는 안 됩니다.
별칭을 source로 현재 창에만 반영하고 .zshrc 파일에는 저장하지 않은 경우입니다. echo ... >> ~/.zshrc로 파일에 실제로 기록됐는지 alias ll 명령으로 다시 확인합니다.
oh-my-zsh를 설치했더니 따로 등록하지 않아도 ll 명령어가 동작하던데요.
oh-my-zsh는 ll을 포함한 여러 ls 별칭을 기본 제공합니다. 이 경우 별도 등록 없이 ll이 동작하며, 직접 등록한 별칭이 있으면 그 설정이 우선 적용됩니다.
ll 외에 다른 단축 별칭도 만들 수 있나요.
같은 방식으로 alias la='ls -A', alias l='ls -CF' 등을 .zshrc에 추가하면 됩니다. 한 파일에 여러 별칭을 나란히 등록해도 서로 충돌하지 않습니다.



