현재 작업 중인 프로젝트의 디렉터리 구조를 알고 싶을 때가 있습니다. 물론 작업 중이던 프로젝트라면 머릿속에 대부분이 들어있겠지만, 문서화를 한다거나, 프로젝트를 맡은 지 얼마 안 됐다거나 하는 경우에는 필요한 경우가 있습니다.
tree 라는 명령을 사용할 건데요.
혹시 설치가 되어있지 않다면 설치해줍니다.
Ubuntu를 사용하신다면,
sudo apt install tree
Mac OS X를 사용하신다면,
brew install tre
과 같이 설치해줍니다.
사용법은 아주 간단합니다.
➜ tree django_demo
django_demo
|-- django_demo
| |-- __init__.py
| |-- __pycache__
| | |-- __init__.cpython-37.pyc
| | `-- settings.cpython-37.pyc
| |-- asgi.py
| |-- settings.py
| |-- urls.py
| `-- wsgi.py
|-- manage.py
`-- superboard
|-- __init__.py
|-- admin.py
|-- apps.py
|-- migrations
| `-- __init__.py
|-- models.py
|-- tests.py
`-- views.py
4 directories, 15 files
군더더기 없이 참 깔끔하죠?
디렉터리 구조가 아주 깊은 경우 특정 깊이까지만 출력하고 싶을 때도 있습니다. 이때는 -L level 옵션을 사용하면 됩니다.
➜ tree django_demo -L 1
django_demo
|-- django_demo
|-- manage.py
`-- superboard
2 directories, 1 file
이 외에도 몇가지 유용한 옵션들이 있습니다.
- -a: .으로 시작하는 hidden file도 출력합니다.
- -d: 파일은 제외하고 디렉터리만 출력합니다.
- -f: 각 디렉터리/파일의 전체 경로를 함께 출력합니다.
- -s: 각 파일의 크기를 함께 출력합니다. -h를 쓰면 읽기 편한 형태로 출력합니다. (-h)
- -p: 각 파일의 퍼미션을 함께 출력합니다.
- -u: 각 파일의 owner를 함께 출력합니다.
- -g: 각 파일의 group을 함께 출력합니다.
- -C: 각 파일에 맞는 컬러를 사용해서 출력합니다.
- -A: 선문자를 사용해서 좀 더 예쁘게 출력합니다.
간단한 명령이지만 알아두면 요긴하게 쓰이는 tree 명령이었습니다.
'Linux' 카테고리의 다른 글
직전 명령의 마지막 인자 재활용하기 : !$ (0) | 2020.05.06 |
---|---|
내 컴퓨터와 서버 디렉터리 동기화 - rsync (0) | 2020.05.02 |
특정 포트를 잡고 있는 프로세스 알아내기 (0) | 2020.04.29 |
텍스트 파일의 특정 줄 주변을 보고 싶을 때 : head & tail (0) | 2020.04.28 |
네트워크를 통해 파일을 빠르게 복사하기: nc 명령어 (3) | 2020.04.26 |