# Show HN: lla - 개인적으로 사용하려고 ls 대체제를 만들었어요

> Clean Markdown view of GeekNews topic #17960. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=17960](https://news.hada.io/topic?id=17960)
- GeekNews Markdown: [https://news.hada.io/topic/17960.md](https://news.hada.io/topic/17960.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2024-11-27T09:03:35+09:00
- Updated: 2024-11-27T09:03:35+09:00
- Original source: [github.com/triyanox](https://github.com/triyanox/lla)
- Points: 8
- Comments: 1

## Summary

Rust로 작성된 ls의 대체제인 lla는 고성능과 확장 가능성을 제공하며, 다양한 보기 모드와 고급 정렬 기능, 유연한 필터링을 지원합니다. 사용자 정의 기능을 개발할 수 있는 플러그인 시스템을 통해 Git 연동, 파일 분류, 키워드 검색 등 다양한 추가 기능을 제공합니다. 또한, 색상 구분 출력과 파일 및 디렉토리 메타데이터 표시 등으로 사용자 편의성을 높였습니다.

## Topic Body

- Rust로 작성된 기존 ls에 대한 고성능, 확장 가능 대체제   
- 향상된 기능, 커스텀 가능한 출력, 확장 기능을 위한 플러그인 시스템을 제공  
- 효율적인 파일 리스팅: 대용량 디렉토리에서도 빠른 속도에 최적화  
- 다양한 보기 모드 : 기본, 롱포맷, 트리뷰, 재귀적 리스팅   
- 고급 정렬 기능 : 알파벳 순(기본), 파일 사이즈, 수정 일자별 등   
- 유연한 필터링: 파일명 또는 확장자를 기준으로 필터링  
- 재귀적 탐색 깊이 설정: 하위 디렉토리 탐색 깊이 최대값 설정 가능  
- 확장 가능한 플러그인 시스템: 사용자 정의 기능을 개발 및 통합 가능  
- 색상 구분 출력: 파일 유형 및 권한을 쉽게 식별할 수 있도록 색상 코드 사용  
- 플러그인을 통한 추가 기능들   
  - Git 연동: 파일의 Git 상태를 표시  
  - 파일 분류: 파일을 타입별로 분류  
  - 키워드 검색: 파일 내용에서 특정 키워드 검색 가능  
  - 파일 해시 출력: 파일의 해시값 표시  
  - 코드 복잡성 분석: 코드의 복잡도 분석  
  - 파일 크기 시각화: 파일 크기 시각화 제공  
  - 중복 파일 탐지: 중복 파일 식별  
  - 디렉토리 메타데이터 표시: 디렉토리의 세부 정보 제공  
  - 파일 메타데이터 표시: 파일의 확장 메타데이터 표시  
  - 최근 Git 커밋 정보 표시: 마지막 Git 커밋 정보 표시

## Comments



### Comment 31744

- Author: neo
- Created: 2024-11-27T09:03:36+09:00
- Points: 1

#### [Hacker News 의견](https://news.ycombinator.com/item?id=42229003)   
- 제작자의 말 : 프로젝트 lla에 대한 피드백에 감사하며, 이 프로젝트의 가장 놀라운 부분은 또 다른 ls 대안을 만드는 것이 아니라, Rust로 시스템 도구를 구축하고 플러그인 아키텍처를 구현하는 과정에서 엄청난 학습을 경험한 것임  
  - 전통적인 ls보다 더 많은 기능을 제공하며, 이는 의도적인 것임  
  - 성능과 문서화가 개선될 필요가 있지만, 오픈 소스의 장점은 피드백을 통해 계속 발전할 수 있다는 것임  
  - 비슷한 프로젝트를 고려하는 사람들에게는 일상적으로 사용하는 도구를 재구상해보시길 권장  
  
- POSIX 도구를 대체하는 프로젝트로서 개인 사용에 적합하게 기대치를 설정한 점에 감사함  
  - 많은 도구들이 최소한의 기능만 제공하고 확장 속성이나 ACL을 무시하며, STDOUT와 STDERR를 제대로 구분하지 못해 하위 도구에 문제를 일으킴  
  - 자신의 아이디어를 세상에 내놓는 것이 불안할 수 있지만, 이를 잘 수행한 점이 훌륭  
  
- 원래의 LISP 머신에서 Genera를 사용한 경험이 있는데 거기서는 클릭 가능한 ls 결과를 다시 가져오는 기능이 있음. 이걸 구현할수 있으면 좋겠음   
  - `ls --hyperlink`가 비슷하다는 댓글이 있는데, 그것과는 다름   
  
- 현대 CLI 도구들이 파일 관리자, git 클라이언트, grep 등 모든 것을 하려고 하는 경향이 있음  
  
- 재미있는 프로젝트로 보이지만, README에서 효율적인 파일 목록화에 대해 언급했는데, 속도를 최적화하기 위해 무엇을 다르게 하고 있는지 궁금함  
  
- Linux에서 잘 알려지지 않은 파일 시스템 CLI 도구인 `gio`가 있음  
  - `gio`는 glib2와 함께 제공되며, 대부분의 Linux 설치에서 사용할 수 있음  
  - `cp`와 유사한 진행 상황 표시, freedesktop 휴지통에 대한 쉬운 CLI 인터페이스, 트리 명령어, 파일 시스템 변경 모니터링 등의 기능을 강조함  
  
- "개인 사용"으로 명시했지만, 흥미로운 새로운 아이디어를 도입한 칭찬할 만한 프로젝트임  
  - 자신의 `ls` 대안인 `pls`에 아이디어를 도용할 수도 있다고 언급함  
  
- ls 대체 도구에서 색상화 외에 어떤 이점을 얻는지 궁금해함  
  - 최근에 `ranger`를 사용하기 시작했으며, 디렉토리 내 모든 것을 보여주고 vim과 같은 단축키로 필터링, 정렬, 검색, 파일 미리보기 및 다른 디렉토리로 이동할 수 있어 ls 사용을 대체할 수 있을 것이라고 생각함
