Fd-find

WikiPo (토론 | 기여)님의 2018년 11월 2일 (금) 09:48 판 (rust fd-find 사용방법)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

1 개요

fd-find
fd
  • https://github.com/sharkdp/fd/blob/master/README.md
  • Rust로 작성한 find 명령 호환 명령. 멀티 쓰레드로 동작하여 경우에 따라 find에 비해 빠른 결과를 얻을 수 있다.
  • find 명령 완전한 대체는 할 수 없는 상태 (2018년 11월 2일 기준)
    • 파일 소유권(uid), 권한(perm), 파일비교(newer), 액세스타임(atime) 등 자주 쓰이지 않지만 있으면 매우 편한 옵션 부재
    • 더 짧은 명령어를 제공한다면서 find '-mtime' 옵션(파일변경시간)을 '--changed-within', '--changed-before'로 제공.

2 예제

  • 3개월 넘은, 1메가 크기 이상의 로그 파일을 압축해서 보관하고 싶은 경우. 이미 압축된 파일은 제외해야 하는 상황을 가정.
    • find 사용시
      • find ./logs -type f -mtime +90 ! \( -name "*zip" -or -name "*gz" -or -name "*tgz" \) -size +1M -exec pigz {} \;
    • fd 사용시
      • '-or'가 없고, 패턴을 묶는 '\( \)'가 없다. not (!)도 없음.
      • fd -E '*zip' -E '*gz' -E '*tgz' -P "./logs" -t f --changed-within 2month -S +1m -x pigz {} \;

3 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}