파일을 `fd`할 수 있는데 파일을 `찾아`야 하는 이유 ;)
find
명령을 사용하여 파일 위치를 알아야 합니다. 그러나 파일 수가 증가함에 따라 find
의 런타임이 크게 증가하는 것을 볼 수 있습니다. 이것은 동생 fd
이 사진에 나오는 곳입니다 ;)README of the project에 따르면
fd
의 일부 하이라이트는 다음과 같습니다.설치를 위해
brew
, apt
, dnf
, pacman
, emerge
, zypper
등의 대부분의 패키지 관리자는 fd
패키지를 가지고 있으므로 표준 설치 명령을 실행할 수 있습니다. 자세한 내용은 사용 중인 시스템의 installation guide을 참조하십시오.Note that for Debian based distros like Ubuntu and others, you will have to install
fdfind
becausefd
is already used by a different package. You can see the guide how to usefd
on Ubuntu instead offdfind
. Spoiler alert: It's not about creating alias. xD
개인적으로 나는
fd
의 속도에 매우 감동했습니다. find
가 완료될 때까지 몇 초 동안 기다려야 했을 때 fd
는 1초 이내에 작업을 수행합니다. 또한 regex 를 알고 있다면 fd
검색에 정규식을 사용하므로 큰 축복입니다.비교를 통해 몇 가지 수치를 얻습니다.
.png
로 검색된 내 홈 디렉토리의 모든find
파일 수:# Do a regex search with `find` with ignoring case
# and piping output to `wc -l` which will count number
# of lines in result
find ~/ -iregex '.*\.png$' 2>/dev/null | wc -l
# 13530 results found
.png
로 검색된 내 홈 디렉토리의 모든fd
파일 수:# Same regex, but now with `fd`
# -H flag to search in hidden directories
# -I to not ignore any files. `fd` ignores files like
# .gitignore, .ignore, .fdignore
fd -HI '.*\.png$' ~/ 2>/dev/null | wc -l
# 13530 results found
따라서 결과의 수는 두 경우 모두 동일합니다.
이제 각 명령에 걸리는 시간을 살펴보겠습니다.
find
:time (find ~/ -iregex '.*\.png$' >/dev/null 2>&1)
# real 0m3.892s
# user 0m2.944s
# sys 0m0.937s
fd
:time (fd -HI '.*\.png$' >/dev/null 2>&1)
# real 0m0.607s
# user 0m2.110s
# sys 0m1.779s
보시다시피
fd
는 GNU find
보다 6배 이상 빠릅니다. 파일을 자주 찾으면 절약되는 시간이 상당히 중요합니다! fd
의 힘을 경험하는 것은 fzf
및 dmenu
와 같은 다른 프로그램으로 쉽게 수행할 수 있습니다.내 시스템에 대한 위 명령 및 해당 출력의 스크린샷:
Reference
이 문제에 관하여(파일을 `fd`할 수 있는데 파일을 `찾아`야 하는 이유 ;)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/chhajedji/why-to-find-files-when-you-can-fd-them-26ej텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)