[한국어] [[]
fd
파일 시스템에서 항목을 찾는 프로그램입니다. find
위한 간단하고 빠르며 사용자 친화적 인 대안입니다. find
의 모든 강력한 기능을 지원하는 것을 목표로하지는 않지만 대부분의 사용 사례에 대한 현명한 (의견이 많은) 기본값을 제공합니다.
설치 • 사용 방법 • 문제 해결
find -iname '*PATTERN*'
대신 fd PATTERN
.ls
와 동일)을 강조 표시합니다..gitignore
의 패턴을 무시합니다.find
보다 50% 짧습니다 :-). 먼저 사용 가능한 모든 명령 줄 옵션에 대한 개요를 얻으려면 Concise Help 메시지를 위해 fd -h
실행하거나 자세한 버전을 위해 fd --help
실행할 수 있습니다.
FD는 파일 시스템에서 항목을 찾도록 설계되었습니다. 수행 할 수있는 가장 기본적인 검색은 단일 인수 인 검색 패턴으로 FD를 실행하는 것입니다. 예를 들어, 귀하의 오래된 스크립트를 찾으려고한다고 가정합니다 (이름은 netflix
포함)입니다.
> fd netfl
Software/python/imdb-ratings/netflix-details.py
이와 같은 단일 인수만으로 호출되면 FD는 현재 디렉토리를 패턴 netfl
포함하는 항목에 대해 재귀 적으로 검색합니다.
검색 패턴은 정규 표현식으로 취급됩니다. 여기서는 x
로 시작하여 rc
로 끝나는 항목을 검색합니다.
> cd /etc
> fd ' ^x.*rc$ '
X11/xinit/xinitrc
X11/xinit/xserverrc
fd
가 사용하는 정규식 구문은 여기에 문서화되어 있습니다.
특정 디렉토리를 검색하려면 FD 에 대한 두 번째 인수로 제공 될 수 있습니다.
> fd passwd /etc
/etc/default/passwd
/etc/pam.d/passwd
/etc/passwd
FD는 논쟁없이 호출 될 수 있습니다. 이는 현재 디렉토리의 모든 항목에 대한 빠른 개요를 재귀 적으로 ( ls -R
과 유사) 얻는 데 매우 유용합니다.
> cd fd/tests
> fd
testenv
testenv/mod.rs
tests.rs
이 기능을 사용하여 주어진 디렉토리에 모든 파일을 나열하려면 다음과 같은 캐치 패턴을 사용해야합니다 .
또는 ^
:
> fd . fd/tests/
testenv
testenv/mod.rs
tests.rs
종종 우리는 특정 유형의 모든 파일에 관심이 있습니다. -e
(또는 --extension
) 옵션으로 수행 할 수 있습니다. 여기서 FD 저장소의 모든 Markdown 파일을 검색합니다.
> cd fd
> fd -e md
CONTRIBUTING.md
README.md
-e
옵션은 검색 패턴과 함께 사용할 수 있습니다.
> fd -e rs mod
src/fshelper/mod.rs
src/lscolors/mod.rs
tests/testenv/mod.rs
제공된 검색 패턴의 파일을 찾으려면 -g
(또는 --glob
) 옵션을 사용하십시오.
> fd -g libc.so /usr
/usr/lib32/libc.so
/usr/lib/libc.so
기본적으로 FD는 숨겨진 디렉토리를 검색하지 않으며 검색 결과에 숨겨진 파일이 표시되지 않습니다. 이 동작을 비활성화하려면 -H
(또는 --hidden
) 옵션을 사용할 수 있습니다.
> fd pre-commit
> fd -H pre-commit
.git/hooks/pre-commit.sample
GIT 저장소 인 디렉토리에서 작업하는 경우 (또는 GIT 리포지토리 포함) FD는 .gitignore
패턴 중 하나와 일치하는 폴더를 검색하지 않고 파일을 검색하지 않습니다. 이 동작을 비활성화하려면 -I
(또는 --no-ignore
) 옵션을 사용할 수 있습니다.
> fd num_cpu
> fd -I num_cpu
target/debug/deps/libnum_cpus-f5ce7ef99006aa05.rlib
모든 파일과 디렉토리를 실제로 검색하려면 숨겨진 기능을 결합하고 기능을 -HI
하여 모든 것을 보여 주거나 -u
/ --unrestricted
사용하십시오.
기본적으로 FD는 각 파일의 파일 이름과 만 일치합니다. 그러나 --full-path
또는 -p
옵션을 사용하면 전체 경로와 일치 할 수 있습니다.
> fd -p -g ' **/.git/config '
> fd -p ' .*/lesson-d+/[a-z]+.(jpg|png) '
검색 결과를 보여주는 대신 종종 그들과 함께 무언가를하고 싶어합니다. fd
각 검색 결과에 대해 외부 명령을 실행하는 두 가지 방법을 제공합니다.
-x
/ --exec
옵션은 각 검색 결과에 대한 외부 명령을 실행합니다 (병렬).-X
/ --exec-batch
옵션은 모든 검색 결과를 인수로 한 번 외부 명령을 한 번 시작합니다. 모든 zip 아카이브를 재귀 적으로 찾아서 포장을 풀어주십시오.
fd -e zip -x unzip
이러한 파일의 두 파일이있는 경우 file1.zip
및 backup/file2.zip
있으면 unzip file1.zip
및 unzip backup/file2.zip
실행합니다. 두 개의 unzip
프로세스가 병렬로 실행됩니다 (파일이 충분히 빠르게 발견되는 경우).
모든 *.h
및 *.cpp
파일을 찾아 clang-format -i
와 함께 자동 형식화하십시오.
fd -e h -e cpp -x clang-format -i
clang-format
에 대한 -i
옵션을 별도의 인수로 어떻게 전달할 수 있는지 주목하십시오. 이것이 우리가 -x
옵션을 마지막으로 배치하는 이유입니다.
모든 test_*.py
파일을 찾아 좋아하는 편집기에서 열어줍니다.
fd -g ' test_*.py ' -X vim
여기에서 Capital -X
사용하여 단일 vim
인스턴스를 열 수 있습니다. test_basic.py
와 lib/test_advanced.py
라는 두 개의 파일이 있으면 vim test_basic.py lib/test_advanced.py
실행합니다.
파일 권한, 소유자, 파일 크기 등과 같은 세부 정보를 보려면 각 결과에 대해 ls
실행하여 fd
에 표시 할 수 있습니다.
fd … -X ls -lhd --color=always
이 패턴은 fd
바로 가기를 제공 할 정도로 유용합니다. -l
/ --list-details
옵션을 사용하여 ls
실행할 수 있습니다 : fd … -l
.
-X
옵션은 fd
rg
(RipGREP)와 결합 할 때 유용하여 모든 C ++ 소스 파일과 같이 특정 클래스의 파일 내에서 검색 할 때 유용합니다.
fd -e cpp -e cxx -e h -e hpp -X rg ' std::cout '
모든 *.jpg
파일을 *.png
파일로 변환하십시오.
fd -e jpg -x convert {} {.}.png
여기서 {}
검색 결과의 자리 표시 자입니다. {.}
파일 확장자없이 동일합니다. 자리 표시 자 구문에 대한 자세한 내용은 아래를 참조하십시오.
-x
사용하여 병렬 스레드에서 실행되는 명령의 터미널 출력은 인터레이스 또는 멍청이가되지 않으므로 fd -x
사용하여 많은 파일을 통해 실행되는 작업을 무례하게 병렬화 할 수 있습니다. 이에 대한 예는 디렉토리 내의 각 개별 파일의 체크섬을 계산하는 것입니다.
fd -tf -x md5sum > file_checksums.txt
-x
및 -X
옵션은 명령 템플릿을 일련의 인수 (단일 문자열 대신)로 사용합니다. 명령 템플릿 후 fd
에 추가 옵션을 추가하려면 A ;
.
명령을 생성하기위한 구문은 GNU 병렬의 구문과 유사합니다.
{}
: 검색 결과의 경로 ( documents/images/party.jpg
)로 대체되는 자리 표시 자 토큰.{.}
: {}
와 마찬가지로 파일 확장자가 없습니다 ( documents/images/party
).{/}
: 검색 결과의베이스 이름 ( party.jpg
)으로 대체되는 자리 표시 자.{//}
: 발견 된 경로 ( documents/images
)의 부모.{/.}
: 확장자가 제거 된베이스 이름 ( party
). 자리 표시자를 포함하지 않으면 FD는 자동으로 {}
를 추가합니다.
-x
/ --exec
의 경우 -j
/ --threads
옵션을 사용하여 병렬 작업 수를 제어 할 수 있습니다. 일련의 실행에 --threads=1
사용하십시오.
때로는 특정 하위 디렉토리에서 검색 결과를 무시하고 싶습니다. 예를 들어, 모든 숨겨진 파일 및 디렉토리 ( -H
)를 검색 할 수 있지만 .git
디렉토리에서 모든 일치를 제외 할 수 있습니다. 이를 위해 -E
(또는 --exclude
) 옵션을 사용할 수 있습니다. 인수로 임의의 글로벌 패턴이 필요합니다.
> fd -H -E .git …
이를 사용하여 장착 디렉토리를 건너 뛸 수 있습니다.
> fd -E /mnt/external-drive …
.. 또는 특정 파일 유형을 건너 뛰기 :
> fd -E ' *.bak ' …
이 영구와 같은 제외 패턴을 만들려면 .fdignore
파일을 만들 수 있습니다. .gitignore
파일처럼 작동하지만 fd
에만 해당됩니다. 예를 들어:
> cat ~ /.fdignore
/mnt/external-drive
* .bak
메모
fd
또한 rg
또는 ag
와 같은 다른 프로그램에서 사용하는 .ignore
파일도 지원합니다.
fd
전 세계적으로 이러한 패턴을 무시하려면 fd
의 글로벌 무시 파일에 넣을 수 있습니다. 이것은 일반적으로 MacOS 또는 Linux에서 ~/.config/fd/ignore
에 있으며 Windows에서는 %APPDATA%fdignore
.
--hidden
옵션을 사용하는 경우 .git
디렉토리 및 해당 내용이 출력에 포함되지 않도록 fd/ignore
파일에 .git/
포함 시키려고 할 수 있습니다.
fd
사용하여 검색 패턴과 일치하는 모든 파일 및 디렉토리를 제거 할 수 있습니다. 파일 만 제거하려면 --exec-batch
/ -X
옵션을 사용하여 rm
호출 할 수 있습니다. 예를 들어, 모든 .DS_Store
파일을 재귀 적으로 제거하려면 실행하십시오.
> fd -H ' ^.DS_Store$ ' -tf -X rm
확실하지 않은 경우 항상 -X rm
없이 fd
에 전화하십시오. 또는 rm
S "대화식"옵션을 사용하십시오.
> fd -H ' ^.DS_Store$ ' -tf -X rm -i
특정 클래스의 디렉토리를 제거하려면 동일한 기술을 사용할 수 있습니다. 디렉토리를 제거하려면 rm
S --recursive
/ -r
플래그를 사용해야합니다.
메모
fd … -X rm -r
foo
하는 시나리오가 있습니다. 레이스 조건 …/foo/bar/foo/…
유발할 수 있습니다. OUTER foo
디렉토리는 먼저 제거되어 (무해한) "foo/bar/foo '로 연결됩니다. rm
호출의 파일 또는 디렉토리"오류가 없습니다.
이것은 fd -h
의 출력입니다. 전체 명령 줄 옵션 세트를 보려면 훨씬 자세한 도움말 텍스트가 포함 된 fd --help
사용하십시오.
Usage: fd [OPTIONS] [pattern] [path]...
Arguments:
[pattern] the search pattern (a regular expression, unless '--glob' is used; optional)
[path]... the root directories for the filesystem search (optional)
Options:
-H, --hidden Search hidden files and directories
-I, --no-ignore Do not respect .(git|fd)ignore files
-s, --case-sensitive Case-sensitive search (default: smart case)
-i, --ignore-case Case-insensitive search (default: smart case)
-g, --glob Glob-based search (default: regular expression)
-a, --absolute-path Show absolute instead of relative paths
-l, --list-details Use a long listing format with file metadata
-L, --follow Follow symbolic links
-p, --full-path Search full abs. path (default: filename only)
-d, --max-depth <depth> Set maximum search depth (default: none)
-E, --exclude <pattern> Exclude entries that match the given glob pattern
-t, --type <filetype> Filter by type: file (f), directory (d/dir), symlink (l),
executable (x), empty (e), socket (s), pipe (p), char-device
(c), block-device (b)
-e, --extension <ext> Filter by file extension
-S, --size <size> Limit results based on the size of files
--changed-within <date|dur> Filter by file modification time (newer than)
--changed-before <date|dur> Filter by file modification time (older than)
-o, --owner <user:group> Filter by owning user and/or group
--format <fmt> Print results according to template
-x, --exec <cmd>... Execute a command for each search result
-X, --exec-batch <cmd>... Execute a command with all search results at once
-c, --color <when> When to use colors [default: auto] [possible values: auto,
always, never]
--hyperlink[=<when>] Add hyperlinks to output paths [default: never] [possible
values: auto, always, never]
-h, --help Print help (see more with '--help')
-V, --version Print version
[0-9].jpg
에서 끝나는 파일에 대해 내 홈 폴더를 검색합시다. 여기에는 ~ 750.000 하위 디렉터와 약 4 백만 파일이 포함되어 있습니다. 평균화 및 통계 분석을 위해 Hyperfine을 사용하고 있습니다. 다음 벤치 마크는 "따뜻한"/미리 채워진 디스크 캐시로 수행됩니다 ( "콜드"디스크 캐시의 결과는 동일한 트렌드를 보여줍니다).
find
부터 시작하겠습니다.
Benchmark 1: find ~ -iregex '.*[0-9].jpg$'
Time (mean ± σ): 19.922 s ± 0.109 s
Range (min … max): 19.765 s … 20.065 s
정기적 인 발현 검색을 수행 할 필요가 없다면 find
훨씬 빠릅니다.
Benchmark 2: find ~ -iname '*[0-9].jpg'
Time (mean ± σ): 11.226 s ± 0.104 s
Range (min … max): 11.119 s … 11.466 s
이제 fd
에 대해 똑같이 시도해 봅시다. fd
기본적으로 정규식 검색을 수행합니다. 공정한 비교를 위해서는 옵션 -u
/ --unrestricted
옵션이 여기에 필요합니다. 그렇지 않으면 fd
숨겨진 폴더를 가로 지르고 경로를 무시할 필요가 없습니다 (아래 참조).
Benchmark 3: fd -u '[0-9].jpg$' ~
Time (mean ± σ): 854.8 ms ± 10.0 ms
Range (min … max): 839.2 ms … 868.9 ms
이 특정 예에서 fd
find -iregex
보다 약 23 배 빠르고 find -iname
보다 약 13 배 빠릅니다 . 그건 그렇고, 두 도구 모두 정확히 동일한 546 파일을 찾았습니까?
참고 : 이것은 하나의 특정 시스템의 특정 벤치 마크입니다. 우리는 많은 다른 테스트를 수행하고 (일관된 결과를 찾았지만) 상황이 다를 수 있습니다! 우리는 모든 사람이 스스로 시도해 보도록 권장합니다. 필요한 모든 스크립트는이 저장소를 참조하십시오.
FD 의 속도와 관련하여, 많은 크레딧이 regex
에 가서 Ripgrep에서도 사용되는 상자를 ignore
(확인하십시오!).
fd
내 파일을 찾지 못합니다! fd
기본적으로 숨겨진 디렉토리와 파일을 무시합니다. 또한 .gitignore
파일의 패턴도 무시합니다. 가능한 모든 파일을 절대적으로 찾으려면 항상 옵션 -u
/ --unrestricted
옵션을 사용하십시오 (또는 -HI
숨겨지고 무시한 파일을 활성화) :
> fd -u …
fd
ls
와 마찬가지로 확장하여 파일을 색칠 할 수 있습니다. 이를 위해서는 환경 변수 LS_COLORS
설정해야합니다. 일반적 으로이 변수의 값은 dircolors
명령에 의해 설정되어 있으며 다른 파일 형식의 색상을 정의하기 위해 편리한 구성 형식을 제공합니다. 대부분의 분포에서 LS_COLORS
이미 설정해야합니다. 창문에 있거나 대체, 더 완전한 (또는 더 화려한) 변형을 찾고 있다면 여기, 여기 또는 여기를 참조하십시오.
fd
또한 NO_COLOR
환경 변수를 존중합니다.
fd
내 동선 패턴을 올바르게 해석하지 않는 것 같습니다 많은 특수 Regex 캐릭터 (예 : []
, ^
, $
, ..)도 쉘의 특수 문자입니다. 의심스러운 경우 항상 Regex 패턴 주위에 단일 인용문을하십시오.
> fd ' ^[A-Z][0-9]+$ '
패턴이 대시로 시작되면 명령 줄 옵션의 끝을 알리 --
추가해야합니다. 그렇지 않으면 패턴은 명령 줄 옵션으로 해석됩니다. 또는 단일 하이픈 문자가있는 문자 클래스를 사용하십시오.
> fd -- ' -pattern '
> fd ' [-]pattern '
alias
ES 또는 쉘 함수에 대한 "명령 찾기" Shell alias
ES 및 Shell 함수는 fd -x
또는 fd -X
통해 명령 실행에 사용할 수 없습니다. zsh
에서는 alias -g myalias="…"
통해 별칭을 전역으로 만들 수 있습니다. bash
에서는 export -f my_function
사용하여 아동 프로세스를 사용할 수 있도록 할 수 있습니다. 여전히 fd -x bash -c 'my_function "$1"' bash
호출해야합니다. 다른 사용 사례 또는 쉘의 경우 (임시) 쉘 스크립트를 사용하십시오.
fzf
와 FD 사용FD를 사용하여 명령 줄 퍼지 파인더 FZF의 입력을 생성 할 수 있습니다.
export FZF_DEFAULT_COMMAND= ' fd --type file '
export FZF_CTRL_T_COMMAND= " $FZF_DEFAULT_COMMAND "
그런 다음 터미널에 vim <Ctrl-T>
입력하여 FZF를 열고 FD- 결과를 검색 할 수 있습니다.
또는 상징적 링크를 따르고 숨겨진 파일을 포함시킬 수 있습니다 (그러나 .git
폴더 제외).
export FZF_DEFAULT_COMMAND= ' fd --type file --follow --hidden --exclude .git '
설정하여 FZF 내부의 FD의 색상 출력을 사용할 수도 있습니다.
export FZF_DEFAULT_COMMAND= " fd --type file --color=always "
export FZF_DEFAULT_OPTS= " --ansi "
자세한 내용은 FZF ReadMe의 팁 섹션을 참조하십시오.
rofi
와 함께 FD 사용 Rofi 는 Stdin 에서 읽음으로써 메뉴를 만들 수있는 그래픽 런칭 메뉴 응용 프로그램입니다. rofi
s -dmenu
모드로의 파이핑 fd
출력은 퍼지로 검색 가능한 파일 및 디렉토리 목록을 만듭니다.
$HOME
디렉토리에서 PDF 파일의 대소 문자를 검색 할 수있는 검색 가능한 다중 선택 목록을 작성하고 구성된 PDF 뷰어로 선택을 엽니 다. 모든 파일 유형을 나열하려면 -e pdf
인수를 삭제하십시오.
fd --type f -e pdf . $HOME | rofi -keep-right -dmenu -i -p FILES -multi-select | xargs -I {} xdg-open {}
ROFI가 제시 한 목록을 수정하려면 fd
명령에 인수를 추가하십시오. ROFI의 검색 동작을 수정하려면 rofi
명령에 인수를 추가하십시오.
emacs
와 함께 FD 사용EMACS 패키지 Find-File-in-Project는 FD를 사용하여 파일을 찾을 수 있습니다.
find-file-in-project
설치 한 후 ~/.emacs
또는 ~/.emacs.d/init.el
파일에 선 (setq ffip-use-rust-fd t)
을 추가하십시오.
EMAC에서 Mx find-file-in-project-by-selected
실행하여 일치하는 파일을 찾으십시오. 또는 Mx find-file-in-project
실행하여 프로젝트에 사용 가능한 모든 파일을 나열하십시오.
fd
의 출력을 파일 트리로 포맷하려면 --fromfile
사용하여 tree
명령을 사용할 수 있습니다.
❯ fd | tree --fromfile
tree
기본적으로 파일을 무시하지 않거나 fd
인쇄 할 내용을 제어하기 위해 일련의 옵션을 지원하지 않기 때문에 tree
자체를 실행하는 것보다 더 유용 할 수 있습니다.
❯ fd --extension rs | tree --fromfile
.
├── build.rs
└── src
├── app.rs
└── error.rs
Bash 및 유사한 경우 간단히 별명을 만들 수 있습니다.
❯ alias as-tree= ' tree --fromfile '
xargs
또는 parallel
로 FD를 사용합니다 fd
에는 -x
/ --exec
및 -X
/ --exec-batch
옵션을 사용하여 명령 실행을위한 내장 기능이 있습니다. 원하는 경우 xargs
와 함께 사용할 수 있습니다.
> fd -0 -e rs | xargs -0 wc -l
여기서 -0
옵션은 FD 에 Null 문자 (Newlines 대신)별로 검색 결과를 분리하도록 지시합니다. 같은 방식으로, xargs
의 -0
옵션은 이런 식으로 입력을 읽도록 지시합니다.
... 및 기타 데비안 기반 Linux 배포판.
Ubuntu 19.04 (Disco Dingo) 또는 새로운 것을 실행하는 경우 공식적으로 유지 관리 된 패키지를 설치할 수 있습니다.
apt install fd-find
이진 이름 fd
이미 다른 패키지에서 사용되므로 바이너리를 fdfind
라고합니다. 설치 후이 문서와 동일한 방식으로 fd
사용하기 위해 명령 ln -s $(which fdfind) ~/.local/bin/fd
실행하여 fd
에 링크를 추가하는 것이 좋습니다. $HOME/.local/bin
$PATH
에 있는지 확인하십시오.
이전 버전의 Ubuntu를 사용하는 경우 릴리스 페이지에서 최신 .deb
패키지를 다운로드하여 다음을 통해 설치할 수 있습니다.
dpkg -i fd_9.0.0_amd64.deb # adapt version number and architecture
이 프로젝트의 릴리스 페이지의 .deb 패키지는 여전히 실행 파일 fd
이름을 지정합니다.
Debian Buster 또는 새로운 경우 공식적으로 유지 관리되는 데비안 패키지를 설치할 수 있습니다.
apt-get install fd-find
이진 이름 fd
이미 다른 패키지에서 사용되므로 바이너리를 fdfind
라고합니다. 설치 후이 문서와 동일한 방식으로 fd
사용하기 위해 명령 ln -s $(which fdfind) ~/.local/bin/fd
실행하여 fd
에 링크를 추가하는 것이 좋습니다. $HOME/.local/bin
$PATH
에 있는지 확인하십시오.
이 프로젝트의 릴리스 페이지의 .deb 패키지는 여전히 실행 파일 fd
이름을 지정합니다.
Fedora 28부터 공식 패키지 소스에서 fd
설치할 수 있습니다.
dnf install fd-find
적절한 저장소가 활성화 된 경우 공식 소스에서 FD 패키지를 설치할 수 있습니다.
apk add fd
공식 저장소에서 FD 패키지를 설치할 수 있습니다.
pacman -S fd
AUR에서 FD를 설치할 수도 있습니다.
공식 리포지토리에서 FD Ebuild를 사용할 수 있습니다.
emerge -av fd
공식 저장소에서 FD 패키지를 설치할 수 있습니다.
zypper in fd
XBPS Install을 통해 fd
설치할 수 있습니다.
xbps-install -S fd
공식 저장소에서 FD 패키지를 설치할 수 있습니다.
apt-get install fd
공식 저장소에서 FD 패키지를 설치할 수 있습니다.
eopkg install fd
Fedora Copr에서 fd
패키지를 설치할 수 있습니다.
dnf copr enable tkbcopr/fd
dnf install fd
Jemalloc 대신 느린 Malloc을 사용하는 다른 버전은 EPEL8/9 Repo에서 패키지 fd-find
로 제공됩니다.
Homebrew로 fd
설치할 수 있습니다.
brew install fd
… 또는 Macports와 함께 :
port install fd
릴리스 페이지에서 사전 제작 된 바이너리를 다운로드 할 수 있습니다.
또는 SCOOP를 통해 fd
설치할 수 있습니다.
scoop install fd
또는 초콜릿을 통해 :
choco install fd
또는 Winget을 통해 :
winget install sharkdp.fd
공식 저장소에서 FD 패키지를 설치할 수 있습니다.
guix install fd
Nix 패키지 관리자를 사용하여 fd
설치할 수 있습니다.
nix-env -i fd
Flox를 사용하여 fd
FLOX 환경에 설치할 수 있습니다.
flox install fd
공식 리포지토리에서 FD-Find 패키지를 설치할 수 있습니다.
pkg install fd-find
Linux 및 MacOS에서는 FD 찾기 패키지를 설치할 수 있습니다.
npm install -g fd-find
Rust의 패키지 관리자화물을 사용하면 다음을 통해 FD를 설치할 수 있습니다.
cargo install fd-find
Rust 버전 1.77.2 이상이 필요합니다.
빌드에도 make
이 필요합니다.
릴리스 페이지에는 Linux, MacOS 및 Windows 용 사전 컴파일 된 바이너리가 포함됩니다. 정적으로 연결된 바이너리도 사용할 수 있습니다. 파일 이름으로 musl
있는 아카이브를 찾으십시오.
git clone https://github.com/sharkdp/fd
# Build
cd fd
cargo build
# Run unit tests and integration tests
cargo test
# Install
cargo install --path .
fd
MIT 라이센스와 Apache 라이센스 2.0의 조건에 따라 배포됩니다.
라이센스 세부 정보는 라이센스 아파치 및 라이센스 MIT 파일을 참조하십시오.