우분투 필수 명령어 ls -al: 리눅스 숨김 파일 및 권한 완벽 정복!

개요

리눅스 및 우분투 터미널 환경에서 가장 기본이 되면서도 중요한 명령어는 파일과 디렉터리를 조회하는 ls입니다. 본 글에서는 ls -al 옵션을 활용하여 파일의 권한, 소유자, 그리고 점(.)으로 시작하는 숨김 파일까지 한눈에 확인하는 방법을 실무 예제와 함께 자세히 알아봅니다.

1. ls 기본 사용법 및 파일 상세 정보 확인 (ls, ls -l)

ls 명령어 실습을 위한 전용 공간을 생성하고 이동하기 위해 mkdir -p ~/ls_demo && cd ~/ls_demo 명령어를 실행합니다.

mkdir -p ~/ls_demo && cd ~/ls_demo

실습에 필요한 예제 파일을 준비하기 위해 touch file1.txt file2.txt 명령어로 빈 파일을 생성합니다.

touch file1.txt file2.txt

ls 명령어는 현재 디렉터리의 파일 및 디렉터리 목록을 출력합니다.
⚙️ [주요 옵션]

-a : 점(.)으로 시작하는 숨김 파일과 디렉터리를 포함하여 모든 항목을 출력합니다.
-l : 파일 권한, 소유자, 파일 크기 등 상세 정보를 표시합니다.
-h : 파일 용량을 사람이 읽기 쉬운 단위(KB, MB, GB)로 표시합니다.
-t : 최근 수정된 파일부터 시간 순서대로 정렬하여 출력합니다.
-S : 파일 크기가 큰 순서대로 정렬하여 목록을 표시합니다.

ls

ls -l 명령어는 파일 권한, 소유자, 용량, 수정 시간 등 각 항목의 상세 정보를 목록 형태로 출력합니다.

ls -l

2. 숨김 파일과 숨김 디렉터리 포함 전체 조회 (ls -a, ls -al)

숨김 파일 실습을 진행하기 위해 파일명 앞에 점(.)이 붙은 .hidden_file 빈 파일을 생성하는 touch ~/ls_demo/.hidden_file 명령어를 실행합니다.

touch ~/ls_demo/.hidden_file

숨김 디렉터리 실습을 진행하기 위해 디렉터리 이름 앞에 점(.)이 붙은 .config_dir 디렉터리를 생성하는 mkdir -p ~/ls_demo/.config_dir 명령어를 실행합니다.

mkdir -p ~/ls_demo/.config_dir

ls -a ~/ls_demo 명령어는 점(.)으로 시작하는 숨김 파일과 숨김 디렉터리를 포함한 모든 항목을 출력합니다.
실행 결과, 현재 디렉터리(.)와 상위 디렉터리(..)를 포함하여 앞서 생성한 .config_dir 디렉터리와 .hidden_file 파일이 목록에 함께 출력되는 것을 확인할 수 있습니다.

ls -a ~/ls_demo

ls -al ~/ls_demo 명령어는 숨김 항목을 포함한 모든 파일과 디렉터리의 상세 정보를 목록 형태로 출력합니다.
실행 결과, 숨김 항목까지 포함하여 각 파일과 디렉터리의 접근 권한, 소유자, 파일 크기, 수정 시간 등이 상세하게 출력되는 것을 확인할 수 있습니다.

ls -al ~/ls_demo

3. 사람이 읽기 쉬운 용량 표시 및 파일 정렬 (ls -lh, ls -lt, ls -lS)

용량 표시 및 정렬 실습에 필요한 예제 파일을 준비하기 위해 5MB 크기의 bigfile.bin 파일을 생성하는 head -c 5M /dev/urandom > ~/ls_demo/bigfile.bin 명령어를 실행합니다.

head -c 5M /dev/urandom > ~/ls_demo/bigfile.bin

ls -lh ~/ls_demo 명령어는 파일 크기를 바이트 단위 대신 사람이 읽기 쉬운 단위(KB, MB 등)로 변환하여 상세 정보 목록을 출력합니다.
실행 결과, bigfile.bin 파일의 용량이 바이트 단위 대신 5.0M 형태로 직관적으로 표시되는 것을 확인할 수 있습니다.

ls -lh ~/ls_demo

ls -lt ~/ls_demo 명령어는 파일 및 디렉터리 목록을 최근 수정된 시간 순서대로 정렬하여 상세 정보를 출력합니다.
실행 결과, 최근에 생성되거나 수정된 항목이 목록 상단에 우선적으로 출력되는 것을 확인할 수 있습니다.

ls -lt ~/ls_demo

ls -lS ~/ls_demo 명령어는 파일 크기가 큰 순서대로 목록을 정렬하여 상세 정보를 출력합니다.
실행 결과, 디렉터리 내에서 가장 용량이 큰 파일부터 차례대로 목록에 출력되는 것을 확인할 수 있습니다.

ls -lS ~/ls_demo

4. 계층적 디렉터리 구조 시각화 (tree 명령어 활용)

하위 디렉터리 구조 시각화 실습을 위해 계층적 구조를 가진 디렉터리를 생성하는 mkdir -p ~/ls_demo/subdir1/nested 명령어를 실행합니다.

mkdir -p ~/ls_demo/subdir1/nested

생성한 중첩 디렉터리 내부에 예제 파일을 추가하기 위해 touch ~/ls_demo/subdir1/nested/file3.txt 명령어를 실행합니다.

touch ~/ls_demo/subdir1/nested/file3.txt

tree 명령어 시각화 실습 진행을 위해 관련 패키지를 설치하는 sudo apt-get update -qq && sudo apt-get install -y tree 명령어를 실행합니다.

sudo apt-get update -qq && sudo apt-get install -y tree

tree -a ~/ls_demo 명령어는 숨김 파일과 숨김 디렉터리를 포함한 지정 디렉터리의 전체 계층 구조를 트리 형태로 시각화하여 출력합니다.
실행 결과, .config_dir.hidden_file과 같은 숨김 항목부터 하위의 subdir1/nested/file3.txt까지 디렉터리와 파일의 포함 관계가 한눈에 직관적으로 출력되는 것을 확인할 수 있습니다.

tree -a ~/ls_demo

지금까지 우분투 필수 명령어 ls -al을 활용하여 숨김 파일 확인 및 리눅스 파일 권한 구조를 간단하게 살펴보았습니다.
오늘 익힌 내용을 바탕으로 더욱 안전하고 효율적인 리눅스 환경을 구축해보세요.