Linux에서 fd 명령을 사용하는 방법

0
898

Ubuntu 스타일 데스크탑이있는 Linux PC의 터미널 창.
Fatmawati Achmad Zaenuri / Shutterstock

Linux에서는 fd 더 쉬운 대안입니다 find 명령. 구문이 단순하고 합리적인 기본값을 사용하며 상식적인 동작이 내장되어 있습니다. 속도를 살펴 보겠습니다.

fd 대 찾기 : 차이점은 무엇입니까?

그만큼 fd 명령은 기존의 find 명령은 Linux에 계속되어 있습니다. 대신 fd 대부분의 일반적인 사용을 만족 시키려고합니다. find 보다 직접적인 방식으로, 그리고 종종 8 ~ 9 배 더 빠릅니다. find. 프로젝트의 GitHub 저장소 페이지에서 벤치 마크 중 일부를 볼 수 있습니다.

fd 일부 색상과 유사한 색상 화 된 출력이 있습니다. ls 모드. 재귀 적이지만 기본적으로 숨겨진 디렉토리를 검색하지 않습니다. Git에 대해 알고 있으며 “.gitignore”파일의 모든 패턴을 자동으로 무시합니다.

fd 기본적으로 대소 문자를 구분하지 않습니다. 그러나 검색 패턴에 대문자가 포함 된 경우 fd 대소 문자 구분 모드로 작동합니다. 물론 기본값을 재정의 할 수 있지만 대부분의 경우 선호하는 방식으로 작동합니다.

관련 : 모든 Linux의 검색 명령을 사용하는 방법

fd 설치

Ubuntu 19.04 (Disco Dingo)부터 설치할 수 있습니다. fd 공식적으로 유지 관리되는 패키지를 apt-get. 이전 버전의 Ubuntu를 실행중인 경우 Git 허브 페이지에서 설치 지침을 확인하십시오.

다음을 입력하십시오.

sudo apt-get install fd-find

sudo apt-get은 터미널 창에 fd-find를 설치합니다.

Ubuntu에서 명령은 fdfind 다른 기존 유틸리티와 이름 충돌을 방지합니다. 당신이 원하는 경우 fd, 별칭을 설정할 수 있습니다.

alias fd=fdfind

alias fd = fd 터미널 창에서 찾습니다.

재부팅 후에도 계속 사용할 수 있도록 별칭을 영구적으로 만들려면 “.bashrc”또는 “.bash_aliases”파일에 넣으십시오.

관련 : Linux에서 별칭 및 셸 함수를 만드는 방법

설치하기 위해서 fd Fedora에서 다음 명령을 입력합니다.

sudo dfn install fd-find

sudo dnf 터미널 창에서 fd-find를 설치합니다.

Manjaro에서 다음을 입력하십시오.

sudo pacman -Syu fd

sudo pacman -Syu fd in a terminal window.

fd 대 fdfind

혼동을 피하기 위해 기본 이름으로 명령을 그대로 두었습니다. fdfind, Ubuntu 테스트 PC에서. fdfdfind 다음 예제에서 볼 수 있듯이 정확히 동일한 명령입니다. fdfind 버전을 표시하기 위해 자체적으로 “fd”라고합니다.)

fdfind --version

터미널 창에서 fdfind --version.

명령을 “fed”라고 부르지 만 예제에서는 Ubuntu “fdfind”를 사용합니다. 다른 Linux 배포에서는 “fdfind”대신 “fd”를 입력하여 몇 가지 키 입력을 절약 할 수 있습니다.

fd를 사용한 간단한 검색

사용하는 경우 fd 명령 줄 옵션이 없으면 다음과 같이 작동합니다. ls, 기본적으로 하위 디렉토리의 파일을 나열한다는 점을 제외하고.

다음을 입력하십시오.

fdfind

터미널 창에서 fdfind.

출력은 파일 유형 및 디렉토리에 따라 다른 색상으로 표시됩니다.

터미널 창에서 fdfind의 출력입니다.

특정 유형의 파일을 보려면 -e (확장자) 옵션. 확장자 앞에 마침표 (.)를 붙일 필요가 없으며 대소 문자를 구분하지 않습니다.

예를 들어 다음을 입력 할 수 있습니다.

fdfind -e png

터미널 창에서 fdfind -e png.

이제 나열된 유일한 파일은 PNG 이미지 파일입니다.

터미널 창에서 fdfind -e png 출력.

단일 파일을 찾으려면 다음과 같이 명령 줄에 해당 이름을 입력합니다.

fdfind index.page

터미널 창에서 fdfind index.page.

파일이 발견되었으며 하위 디렉토리에 있습니다. 우리는 말할 필요가 없었습니다 fd 재귀 적으로 검색합니다.

특정 디렉토리에서 검색을 시작하려면 명령 줄에 파일 경로를 포함합니다. 다음 명령은 “/ etc”디렉토리에서 검색을 시작하고 파일 이름에 “passwd”가 포함 된 파일을 찾습니다.

fdfind passwd /etc

터미널 창에서 fdfind passwd / etc.

여기에서는 파일 이름에 “coord”가 포함 된 모든 C 소스 코드 파일을 검색합니다.

fdfind -e c coord

터미널 창에서 fdfind -ec coord.

두 개의 일치하는 파일이 발견되었습니다.

fd 및 Git

Git은 매우 인기있는 소스 코드 버전 제어 시스템입니다. 컴퓨터에서 Git을 사용하는 경우 “.gitignore”파일을 사용하여 Git에 어떤 파일과 관련이 있고 어떤 파일을 무시할 수 있는지 알려줍니다. 기본적으로, fd “.gitignore”파일의 설정을 따릅니다.

이 디렉토리에는 Git 저장소와“.gitignore”파일이 있습니다. 다음을 입력합니다.

ls -adl .git*

터미널 창에서 ls -adl .git *.

물어 보자 fd 파일 이름에 “coord”가 포함 된 모든 파일을 나열합니다. 그런 다음 검색을 반복하고 -I (무시 없음) 옵션. 이것은 말한다 fd “.gitignore”파일의 설정을 무시하고 일치하는 모든 파일을보고합니다.

이 모든 작업을 수행하려면 다음을 입력합니다.

fdfind coord
fdfind coord -I

터미널 창에서 좌표를 찾습니다.

두 번째 결과 세트에있는 두 개의 추가 파일은 오브젝트 파일입니다. 파일 프로그램이 컴파일 될 때 생성됩니다. 그런 다음 링커에서 프로그램의 최종 실행 가능 버전을 만드는 데 사용됩니다.

개체 파일은 일반적으로 소스 코드 버전 제어 프로그램에서 무시됩니다. 프로그램을 컴파일 할 때마다 다시 생성되므로 복사본을 저장할 필요가 없습니다. “.gitignore”파일에는 Git에게 개체 파일을 무시하도록 지시하는 항목이 있으며 기본적으로 fd 그들도 무시합니다.

그만큼 -I (무시하지 않음) 옵션 강제 fd “.gitginore”파일의 안내를받지 않고 찾은 모든 것을 반환합니다.

파일 유형 및 대소 문자 구분

당신은 요청할 수 있습니다 fd 디렉토리, 파일 (실행 가능하고 비어있는 파일 포함) 및 기호 링크를 찾습니다. 다음을 사용하여 그렇게 할 수 있습니다. -t (유형) 옵션 뒤에 아래 문자 중 하나가 나옵니다.

  • 에프: 파일.
  • : 디렉토리.
  • : 심볼릭 링크.
  • 엑스: 실행 가능 파일.
  • 이자형: 파일이 비어 있습니다.

다음은 이미지라는 디렉토리를 찾습니다.

fdfind -td images

fdfind -td 터미널 창에서 이미지.

현재 하위 디렉토리보다 한 하위 디렉토리에 일치하는 항목이 있습니다.

검색 패턴에서 대소 문자 구분이 어떻게 작동하는지 살펴 보겠습니다. 먼저 파일 이름에 “geo”가 포함 된 파일을 검색 한 다음 파일 이름에 “Geo”가 포함 된 파일을 검색하려면 다음을 입력합니다.

fdfind -tf geo
fdfind -tf Geo

터미널 창에서 fdfind -tf geo.

첫 번째 명령에서는 소문자 검색 패턴을 사용했습니다. fd 대소 문자를 구분하지 않는 방식으로 작동합니다. 즉, “Geo”와 “geo”가 모두 유효한 일치 항목입니다.

두 번째 명령에는 대문자가 포함되어 있습니다. fd 대소 문자를 구분하는 방식으로 작동합니다. 이는 “Geo”만 유효한 일치임을 의미합니다.

명령 실행

그만큼 fd 명령을 사용하면 다른 명령을 실행하고 발견 된 각 파일에서 실행할 수 있습니다.

소스 코드 디렉토리 트리 어딘가에 Zip 파일이 있다는 것을 알고 있다고 가정 해 보겠습니다. ZIP 확장자를 가진 파일을 검색하는 다음 명령을 사용하여 찾을 수 있습니다.

fdfinf -e zip

터미널 창에서 fdfinf -e zip.

이랑 -x (exec) 옵션을 사용하면 발견 된 각 파일을 다른 명령에 전달하여 처리 할 수 ​​있습니다. 예를 들어 다음을 입력하여 unzip 유틸리티를 호출하여 ZIP 파일의 압축을 풀 수 있습니다 ( “{}”는 찾은 파일을 나타내는 자리 표시 자입니다).

fdfind -e zip -x unzip {}

현재 작업 디렉토리에서 파일의 압축이 풀립니다. ZIP 파일이 포함 된 디렉토리에서 압축을 풀려면 다음 자리 표시 자 중 하나를 사용할 수 있습니다.

  • {}: 발견 된 파일의 전체 파일 경로 및 이름입니다.
  • {/}: 찾은 파일의 파일 이름입니다.
  • {//}: 찾은 파일이 포함 된 디렉토리입니다.
  • {/.}: 찾은 파일의 확장자없이 파일 이름입니다.

ZIP 파일이 포함 된 디렉토리에서 찾아서 압축을 풀려면 unzip 파일을 사용할 수 있습니다. -d (디렉토리) 옵션을 선택하고 상위 디렉토리 자리 표시 자 ({//}) :

fdfind -e zip -x unzip {} -d {//}

fdfind-e zip -x unzip {} -d {//} in a terminal window.

그런 다음 ZIP 파일을 찾아 상위 디렉토리에 압축을 풉니 다.

터미널 창에서 fdfind-e zip -x unzip {} -d {//}의 출력.

당신의 Go-to Find?

가장 일반적인 용도를 이러한 단순함으로 다루기 때문에 fd 쉽게 “찾기”명령이 될 수 있습니다. 고급 기능이 필요할 때마다 언제든지 노련한 베테랑에게 돌아갈 수 있습니다. find.