을 찾는 방법 파일에서 리눅스 명령을 사용하여 라인

find는 명령을 재귀적으로 필터링을 개체에서의 파일 시스템을 기반으로 간단한 조건부 메커니즘이 있습니다. 파일 시스템의 파일 또는 디렉토리를 검색하려면find를 사용하십시오. -exec플래그를 사용하면 동일한 명령 내에서 파일을 찾아 즉시 처리 할 수 있습니다.,

Find Linux Files by Name or Extension

Use find from the command line to locate a specific file by name or extension., 다음 예제를 검색한*.err파일의/home/username/디렉토리와 모든 하위 디렉토리:

find /home/username/ -name "*.err"

야 합 유사한 출력에서 당신의 콘솔:

 /home/username/example.errThe matching file in the /home/username/ directory is "example.err"

일반적인 리눅스 명령을 찾을 수 있 및 구

find명령은 일반적으로 형식은 다음과 같습니다.

find options starting/path expression
  • options특성 동작을 제어 및 최적화의 방법을find프로세스.,
  • starting/path속성은find필터링을 시작하는 최상위 디렉토리를 정의합니다.
  • expression특성은 디렉터리 계층을 검색하여 출력을 생성하는 테스트를 제어합니다.

파일 이름을 사용하여 Linux 에서 파일 찾기

파일 이름을 사용하여 파일을 찾으려면find -name filename구문을 사용하십시오. 경로를 생략하면 전체 디스크에 걸쳐 파일을 검색합니다., 예를 들어,당신을 찾을 수 있습니다 라는 이름의 파일example.err에 위치한 당신의/home/username디렉토리에 다음과 같은 명령:

find -name example.err

을 볼 수 당신 출력:

 ./username/example.err

파일을 찾을에서 당신의 현재 디렉터리를 사용하여 찾는 명령

살펴 example 디렉토리 구조와 파일이 있습니다. 그들은 이 가이드의 예를 통하여 언급된다.,하려는 파일을 찾을example.err디렉터리 내에서 또는 그것의 하위 디렉터리할 수 있는 문제는 다음과 같은 명령:

find . -name example.err

의 출력은 다음과 유사합니다.

 ./example.err./directory_1/example.err

출력을 반영한directory_1디렉토리 구조로 구성되어 있다:

 ├── directory_1│ ├── subdirectory_1│ │ └── example.err│ └── example.err

찾기 이미지 파일에서 리눅스 명령을 사용하여 선

파일을 참조 구조에서는 이전 섹션의 이미지가있 라는image01.png있는 루트에(/)s 의 디렉토리 구조.,

파일을 찾기 위해image01.png실행하는 다음과 같은find명령을 찾아내는 모든.png파일 내에 저장된/디렉토리에 있습니다.

find -name *.png

야 합 유사한 출력:

 ./image01.png

변경할 이미지 파일 유형과 모든.jpg파일에서 루트 디렉토리에(/):

find -name *.jpg

출력을 닮은 예입니다., 파일의 위치를 보려면 이전 섹션의 예제 디렉토리 구조를 참조하십시오.

 ./web_files/unnamed.jpg

찾아 빈 파일이 디렉토리에서 명령을 사용하여 선

을 찾아 빈 파일이 디렉토리에서 명령줄을 사용하여 문제 다음 명령:

find . -type f -empty

지 않으면 출력이 반환한 다음,없다면 빈 파일 이내에 당신의 현재 디렉토리에 있습니다.

옵션과 최적화를 위한 파일을 찾는 리눅스 명령을 사용하여 선

에 대한 기본 구성findignoressymbolic 링크입니다., 하려면find를 따라 돌아와 상징적 인 링크를 추가-L옵션을 명령,다음과 같습니다:

find -O3 -L /var/www/ -name "*.html"

이 명령할 수 있는 최대의 최적화 수준(-O3) 고 있는find을 따라 심볼릭 링크(-L). find검색체 디렉토리 아래에/var/www/를 끝나는 파일을.html.,

find는 필터링 전략을 최적화하여 성능을 향상시킵니다. 세 가지 사용자 선택 가능한 최적화 수준으로 지정된-O1,-O2,and-O3. -O1최적화하는 것은 기본이고 힘find을 기반으로 필터에서 파일을 실행하기 전에는 모든 다른 테스트합니다.,

최적화에는-O2수준을 우선 파일 이름 필터,로에-O1를 실행하는 모든 파일 형식 필터링을 진행하기 전에 다른 많은 리소스 조건입니다. 레벨-O3최적화할 수 있는find을 수행하는 가장 심각한 최적화 및 순서 모든 테스트를 기반으로 그들의 상대적인 비용과 가능성을 그들의 성공입니다.,

Command Description
-O1 Filter based on filename first (default).
-O2 File name first, then file-type.,
-O3 수 있find자동으로 다시 주문 검색에 따라 자원의 효율적 사용과 가능성. 성공의
-maxdepth X 검색 현재 디렉토리뿐만 아니라 모든 하위 디렉토리 X 은 깊은 수준입니다.
-iname 검색에 관계 없이 텍스트를 위한 경우입니다.,
-not Return only results that do not match the test case.
-type f Search for files.
-type d Search for directories.,

파일을 찾을 수 있에서 리눅스에 수정시간을 사용하여 명령줄

find명령할 수 있는 필터는 디렉토리 계층구조에 기반한 경우 파일이 마지막으로 수정됩니다., 예를 들어,다음과 같은 명령어를 찾는 모든 파일과 함께.err확장자는 수정된 마지막 7days:

find / -name "*err" -mtime -7

예제 명령은 아래와 같은 출력을 반환합니다.

Grep 를 사용하여 파일을 찾으려면에서 리눅스 명령을 사용하여 선

find명령만 필터링 할 수 있는 디렉토리 계층구조에 따라 파일의 이름과 메타데이터가 포함되어 있습니다. 파일의 내용을 기반으로 검색해야하는 경우 다음과 같은 도구를 사용하십시오.grep., 다음 예제를 살펴보겠습니다.

find . -type f -exec grep "test" '{}' \; -print

이 명령은 검색 매체에서 현재 디렉토리 계층 구조(.)그 파일에(-type f)다음 명령을 실행하는grep "test"모든 파일을 만족시키는 조건이 있습니다. 일치하는 파일이 화면에 인쇄됩니다(-print). 중괄호({})는 찾기 일치 결과의 자리 표시자입니다., {}은 따옴표(')을 피할 수교grep잘못된 형식의 파일 이름입니다. -exec명령이 종료되었으로 세미콜론(;)해야하는,탈출(\;)을 피하에 의해 해석합니다.

예제에 사용 된 파일(example.err)에는”test”라는 텍스트가 있습니다., 를 실행하면 예제 명령,표시 유사한 출력:

Grep 식별하는 모든 파일에서 현재 작업 디렉터리를 포함하는 문자열”시험”.,

find명령을 구현한-exec옵션을 생성할 수 있는 유사한 산출을 위의 예를 사용하는xargs명령:

find . -type f -print | xargs grep "test"

프로세스를 찾을 사용하여 파일을 찾는 명령 리눅스에서

-exec옵션을 실행하는 명령과 일치하는 모든 개체에 대해find식입니다., 다음 예제를 살펴보겠습니다.

find . -name "example.err" -exec chmod o+r '{}' \;

이 필터는 모든 개체에 현재는 계층(.)라는 파일에 대한rc.conf고 실행되는chmod o+r명령을 수정하는 파일의 권한find명령의 결과입니다.

예제 명령을 실행하고 실행하는-exec옵션에서의 루트 디렉토리find프로세스. -execdir를 사용하여 경기가 상주하는 디렉토리에서 지정된 명령을 실행합니다., 이는 보안 문제를 완화하고 일부 작업에 대해 더 나은 성능을 제공 할 수 있습니다.

-exec또는-execdir옵션은 추가 프롬프트없이 실행됩니다. 당신이 선호하는 경우라는 메시지가 표시되는 조치가 취하기 전에,대체-exec-ok또는-execdir-okdir.

을 찾는 방법과 삭제한 파일을 사용하여 리눅스 명령줄

주의

이 옵션을 사용하여 극도의 주의를 기울여야 합니다.,

옵션을 추가-delete의 끝에 일치하는 표정을 삭제하는 모든 파일이 일치합니다. 결과가 삭제하려는 파일과 만 일치한다고 확신하는 경우이 옵션을 사용하십시오.

아래 예에서는find을 재귀적으로 모든 파일을 찾에서 계층구조에서 시작하여 현재 디렉토리와 모든 파일을 삭제하는 것으로 끝나는.err확장자:

find . -name "*.err" -delete

여전히 몇 가지 질문입니까?,

커뮤니티에 가입하고 다른 Linode 및 Linux 애호가를 위해 질문을 게시하여 도움을 받으십시오.

관련 질문:

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다