ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 파일의 검색
    Technique/LPIC 2019. 8. 15. 20:47
    반응형

    Linux에는 다양한 검색 커맨드가 준비되어 있다. 검색의 용도에 의해 적절한 커맨드를 선택할 필요가 있다.

     

    find 커맨드

    지정한 디렉터리 이해에서부터 검색 조건에 매치되는 파일이나 디렉터리를 섬색한다.  파일명뿐만 아니라 액세서 권한이나 파일 사이즈, 갱신일 등을 적용하여 검색하거나, 검색 조건에 메타 캐릭터가 사용될 뿐 아니라, 검색 조건에 매치하는 파일에 대하여 액션을 일으키거나( 예를 들면 삭제 )등 고속 한 처리가 가능한 커맨드이다.

    검색 디렉터리의 지정을 생략할 경우 작업 중인 디렉터리가 검색 대상이 된다. 검색 대상 디렉터리에 접근 가능한 권한을 가지고 있는 필요가 있기에 주의해야 한다. 즉 일반 유저는 접근이 금지된 디렉터리의 안을 일반 유저가 find 커맨드로 검색하는 것은 불가능하다.

    find [검색 디렉터리] [검색 식]
    검색식 설명
    -name 파일 명 파일명으로 검색한다.
    -atime 일시 마지막 액세스 시열로 검색한다.
    -mtime 마지막 갱신 시열로 검색한다.
    -perm 액세서 권한 액세스 권한으로 검색한다.
    -size 사이즈 파일 사이즈 (블럭 단위)로 검색한다.
    -type 파일의 종류

    파일의 종류로 검색한다.

    f : 파일

    l : 심볼릭 링크

    d : 디렉터리

    -user 유저 명 파일의 소유자 명으로 검색한다.
    -print 매치한 파일을 표시한다.
    -exec 커맨드 {}\; 매치된 파일에 대한 커맨드를 실행한다.
    -ok 커맨드 "{}\; 매치된 파일에 대한 커맨드를 실행한다 ( 확인 필요 )

    located 커맨드

    미리 작성된 데이터 베이스에 의거하여 지정된 패턴에 일치하는 파일을 검색한다. fin 커맨드에 의해 가장 고속으로 동작한다.

    locate 검색 패턴

     

    updatedb 커맨드

    locate 커맨드는 미리 작성된 파일명 데이터 베이스에 의거하여 검색하기 때문에 find 커맨드보다 더 빠르게 동작한다. 하지만 당연하게도 데이터 베이스의 갱신 후에 작성, 변경된 파일은 발견하는 것이 불가능하다. 데이터 베이스를 갱신하기 위해서는 updatedb 커맨드를 사용한다.

    updatedb [옵션]
    옵션 설명
    -e 패스 데이터 베이스에 작성되지 않은 패스를 지정한다.

    updatedb 커맨드는 많은 버전에서는 cron을 이용하여 정기적으로 갱신하도록 되어 있다. updatedb 커맨드의 동작을 변경하기 위해서는 /etc/u [datedb.conf 파일을 수정한다. 이 파일에는 updatedb 커맨드의 동작에 영향을 미치는 환경변수들이 저장되어 있다.

     

    which 커맨드

    커맨드를 찾아내어 절대 패스를 표시한다.

    which 커맨드 명

    which 커맨드는 환경변수 PATH에 의거하여 검색을 실행하기 때문에 일반 유저가 관리자용 커맨드를 검색하는 것은 불가능하다.

     

    whereis 커맨드

    지정한 커맨드의 바이너리 파일, 소스코드, 매뉴얼 파일이 놓여 있는 장소를 검색한다.

    whereis [옵션] 커맨드
    옵션 설명
    -b 바이너리 파일만 검색한다.
    -m 매뉴얼 파일만 검색한다.
    -s  소스코드만 검색한다.

     

    type 커맨드

    지정한 커맨드가 통상의 실행 파일인지, 쉘의 동작을 위한 커맨드인지, alias 인지 등에 대한 정보를 나타낸다.

    반응형

    'Technique > LPIC' 카테고리의 다른 글

      (0) 2019.10.14
    환경변수와 쉘 변수  (0) 2019.10.14
    파일 시스템 계층의 표준  (0) 2019.08.15
    쿼터 관리 커맨드  (0) 2019.08.15
    디스크 쿼터의 관리  (0) 2019.08.15

    댓글

Designed by Tistory.