여기 자주 쓰이는 tree
명령어를 정리해 보겠습니다. 파일과 디렉토리 구조를 시각적으로 확인할 수 있는 tree
명령어는 여러 옵션을 제공해 다양한 방식으로 트리를 출력할 수 있습니다.
기본적인 명령어
디렉토리 구조 출력 (기본)
현재 디렉토리의 구조를 기본 형태로 출력합니다.
tree
가장 기본 구조다
하지만, 폴더 안에 내용이 많다면 tree가 많이 길어질 수 있다
숨김 파일 포함 (-a
)
숨김 파일과 디렉토리를 포함하여 출력합니다.
tree -a
. 으로 인해 보여지지 않은 숨겨진 파일이 보인다
디렉토리만 출력 (-d
)
파일은 제외하고 디렉토리만 출력합니다.
tree -d
유일한 폴더인 zipfiles 만 보인다
깊이 제한 (-L level
)
특정 수준의 깊이만 표시하고, 그 하위는 생략합니다. (여기서는 두 단계까지만 표시)
tree -L 2
zipfiles 안의 내용은 레벨 컷에서 끝나서 보이지 않는 것을 알 수 있다
파일 및 디렉토리 정보 표시 옵션
수정 날짜 및 시간 표시 (-D
)
파일과 디렉토리의 마지막 수정 날짜와 시간을 표시합니다.
tree -D
프로젝트 수정 시간을 보여준다
출력 형식 변경 옵션
HTML 형식으로 출력 (-H baseHREF
)
트리 구조를 HTML 파일로 저장합니다.
tree -H . -o tree.html
해당 명령어를 실행하면 tree.html이 해당 경로에 추가된다.
여기서 -H 만 실행하면 에러가 나고
-H . 처럼 경로를 표시해줘야 한다.
-o 는 html 이름을 지정해주는 옵션이다.
JSON 형식으로 출력 (-J
)
트리 구조를 JSON 형식으로 출력합니다.
tree -J
XML 형식으로 출력 (-X
)
트리 구조를 XML 형식으로 출력합니다.
tree -X
사진은 생략했지만 json, xml 등 다양한 형태로 저장할 수 있다
패턴 필터링 옵션
특정 파일/디렉토리만 표시 (-P pattern
)
특정 패턴(*.txt
)에 맞는 파일만 표시합니다.
tree -P "*.txt"
ls / grep 랑 비슷하게 해당 string에 일치하는 패턴을 모두 출력할 수 있다.
특정 파일/디렉토리 제외 (-I pattern
)
특정 패턴(*.log
)에 맞는 파일은 제외하고 출력합니다.
tree -I "*.log"
반대로 제외하는 패턴이다
정렬 옵션
마지막 수정 날짜 순서로 정렬 (-t
)
최근 수정된 파일부터 표시합니다.
tree -t
디렉토리 우선 정렬 (--dirsfirst
)
디렉토리를 먼저, 파일을 나중에 출력합니다.
tree --dirsfirst
역순 정렬 (-r
)
기본 정렬의 역순으로 출력합니다.
tree -r
아까 배운 -D 옵션과 함께 -t 를 써보았다
-t를 붙이면 가장 오래된 파일부터 최근 파일로 정렬되는 것을 알 수 잇다
기타 유용한 옵션
출력에서 카운트 생략 (--noreport
)
트리의 파일과 디렉토리 개수 요약 정보를 생략합니다.
tree --noreport
--noreport 옵션을 넣으면 맨 마지막 "1 directory, 9 files" 등을 생략할 수 있다.
>> 등 옵션으로 저장할 때 유용할 것 같다
색상 없이 출력 (-n
)
색상을 사용하지 않고 출력합니다.
tree -n
이미지에 색깔이 없어진 것을 알 수 있다
자주 쓰이는 조합 예시
배운 걸로 여러 조합을 만들어 볼 수 있다.
- 디렉토리 구조를 최대 2단계 깊이로 폴더들만 출력해보기
tree -d -L 2
tree -d -L 2
- 디렉토리 구조를 날짜 순으로 정렬하고 -D 옵션으로 확인하기
tree -t -D
tree -t -D
이 명령어들로 파일 및 디렉토리 구조를 다양하게 확인할 수 있습니다.