리눅스 명령어 tree 사용법 및 8가지 옵션

리눅스 명령어 tree는 파일 시스템의 구조를 시각적으로 확인할 수 있는 유용한 도구입니다. 이번 포스팅에서는 tree 명령어의 사용법과 다양한 옵션들에 대해 알아보겠습니다.

tree 명령어란?

tree 명령어는 디렉터리와 파일을 트리 구조로 시각화하여 보여줍니다. 이는 복잡한 디렉터리 구조를 한눈에 파악하고자 할 때 매우 유용합니다. 기본적으로 tree 명령어를 실행하면 현재 디렉터리의 모든 하위 디렉터리와 파일들이 트리 형태로 출력됩니다.

tree 명령어 설치하기

대부분의 리눅스 배포판에서는 tree 명령어가 기본적으로 설치되어 있지 않습니다. 따라서 먼저 tree 명령어를 설치해야 합니다. 배포판에 따라 설치 방법이 다르지만, 대표적인 설치 방법은 다음과 같습니다.

Ubuntu 및 Debian 계열

sudo apt-get install tree
ShellScript

CentOS 및 Fedora 계열

sudo yum install tree
ShellScript

설치가 완료되면, 터미널에서 tree 명령어를 사용할 수 있습니다.

tree 명령어 기본 사용법

tree 명령어를 사용하는 기본 방법은 매우 간단합니다. 터미널에서 tree를 입력하고 엔터를 치면 현재 디렉터리의 트리 구조를 볼 수 있습니다.

tree
ShellScript

이 명령어를 실행하면 아래 그림과 같이 현재 디렉터리와 그 하위 디렉터리, 파일들이 트리 구조로 출력됩니다.

그림 1. 리눅스 명령어 tree: 실행 결과

특정 디렉터리 지정

특정 디렉터리의 구조를 보고 싶다면 디렉터리 경로를 명령어 뒤에 추가하면 됩니다.

tree /path/to/directory
ShellScript

아래와 같이 ./projects/rabbit 하위의 디렉터리 구조를 확인하고 싶다면 해당 경로를 파라미터로 넘겨주면 됩니다.

그림 2. 리눅스 명령어 tree: 특정 디렉터리 구조 확인

tree 명령어 주요 옵션

tree 명령어는 다양한 옵션을 제공합니다. 여러 옵션들은 출력 형식을 조정할 수 있습니다. 주요 옵션들을 살펴보겠습니다.

디렉터리만 표시 (-d)

디렉터리 구조만 확인하고 싶을 때에는 -d 옵션을 사용합니다.

tree -d
ShellScript

다음과 같이 파일은 보이지 않고 디렉터리 구조만 확인할 수 있습니다.

그림 3. 리눅스 명령어 tree: 디렉터리 구조만 확인

레벨 제한 (-L)

디렉터리 구조의 깊이가 깊을 경우, 너무 많은 정보가 출력될 수 있습니다. -L 옵션을 사용하여 출력할 트리의 레벨 깊이를 제한할 수 있습니다.

tree -L 2
ShellScript

위 명령어는 현재 디렉터리부터 최대 두 단계 깊이까지만 출력합니다.

그림 4. 리눅스 명령어 tree: 디렉터리 깊이 2 단계까지만 출력

숨김 파일 포함 (-a)

기본적으로 tree 명령어는 숨김 파일(파일 이름이 점(.)으로 시작하는 파일)을 출력하지 않습니다. -a 옵션을 사용하면 숨김 파일도 포함하여 출력할 수 있습니다.

tree -a
ShellScript

-a 옵션을 이용하니까 보이지 않던 .env 파일이 tree 구조 상에 나타납니다.

그림 5. 리눅스 명령어 tree: 숨김 파일도 모두 표시

파일 크기 표시 (-s)

파일과 디렉터리의 크기를 함께 보고 싶다면 -s 옵션을 사용합니다.

tree -s
ShellScript

-s 옵션을 이용하면 바이트 단위의 숫자로 크기를 표현합니다.

그림 6. 리눅스 명령어 tree: 디렉터리와 파일의 용량 표시(단위: 바이트)

파일 크기 읽기 쉽게 표시 (-h)

파일과 디렉터리의 크기를 보다 사람이 읽기 쉬운 방식으로 보고 싶다면 -h 옵션을 사용합니다.

tree -h
ShellScript

-h 옵션을 이용하면 아래와 같이 크기에 따라 K, M, G 등으로 용량을 보다 이해하기 쉽게 표시해 줍니다.

그림 7. 리눅스 명령어 tree: 디렉터리와 파일의 용량 읽기 쉽게 표시

파일 타입 표시 (-F)

각 파일의 타입을 표시하려면 -F 옵션을 사용합니다.

tree -F
ShellScript

다음과 같이 디렉터리명 뒤에는 슬래시(/), 실행 파일 뒤에는 별표(*)로 표시됩니다.

그림 8. 리눅스 명령어 tree: 디렉터리와 파일의 타입 표시

출력 결과 저장 (-o)

tree 명령어의 출력을 파일로 저장하고 싶다면 -o 옵션을 사용합니다.

tree -o output.txt
ShellScript

이 명령어를 실행하면 트리 구조가 output.txt 파일에 저장됩니다.

그림 9. 리눅스 명령어 tree: 트리 구조 파일로 저장

유용한 활용 방법

대규모 프로젝트 구조 확인

복잡한 프로젝트의 디렉터리 구조를 한눈에 파악하고 싶을 때 tree 명령어를 사용하면 유용합니다. 특히 소프트웨어 개발 프로젝트에서는 소스 코드 파일과 디렉터리 구조를 빠르게 이해하는 데 도움이 됩니다.

디렉터리 사용량 확인(–du)

디렉터리의 사용량을 확인할 때 du 명령어를 사용할 수 있는 것처럼, tree 명령어와 함께 –du 옵션을 이용하면, 디렉터리와 파일의 크기를 확인할 수 있습니다. 이를 통해 어떤 디렉터리가 많은 공간을 차지하고 있는지 쉽게 알 수 있습니다.

그림 10. 리눅스 명령어 tree: 디렉터리 크기 확인

파일 관리

디렉터리 구조를 시각적으로 확인하면서 불필요한 파일이나 디렉터리를 정리할 때 유용합니다. tree 명령어를 통해 전체 구조를 파악한 후, 필요 없는 항목들을 삭제하거나 이동할 수 있습니다.

주의사항

tree 명령어는 대규모 디렉터리 구조를 출력할 때 시간이 많이 걸릴 수 있습니다. 특히 디렉터리의 깊이가 깊거나 파일 수가 많을 경우 출력이 느려질 수 있습니다. 이럴 때는 -L 옵션을 사용하여 출력 레벨을 제한하는 것이 좋습니다.

또한, 출력 결과가 너무 길어질 경우 파일로 저장하여 확인하는 것이 더 효율적일 수 있습니다. -o 옵션을 사용하여 출력을 파일로 저장하고, 텍스트 편집기에서 확인할 수 있습니다.

정리

이번 포스팅에서는 리눅스에서 tree 명령어를 사용하는 방법과 다양한 옵션들에 대해 알아보았습니다. tree 명령어는 디렉터리 구조를 시각적으로 확인할 수 있는 매우 유용한 도구로, 다양한 상황에서 활용할 수 있습니다. 프로젝트 관리, 디스크 사용량 확인, 파일 정리 등 여러 가지 용도로 사용할 수 있으니 꼭 한번 사용해 보시기 바랍니다. 명령어의 옵션을 잘 활용하면 더욱 효율적으로 시스템을 관리할 수 있을 것입니다.

참고자료

관련 포스트

Leave a Comment