Linux의 Locate 명령

Linux의 Locate 명령

2022-06-01 last update

5 minutes reading terminal locate
Linux에서 작업할 때 가장 흔히 볼 수 있는 작업 중 하나는 파일과 디렉터리를 검색하는 것이다.
Linux 시스템에서 파일을 검색할 수 있는 몇 가지 명령이 있습니다. 가장 많이 사용되는 명령은'찾기'와'위치'입니다.locate 명령은 이름에 따라 파일과 디렉터리를 검색하는 가장 빠르고 간단한 방법이다.본고에서 우리는 locate 명령을 어떻게 사용하는지 설명할 것이다.

locate 설치 중(locate 명령을 찾을 수 없음)

배포판과 시스템 구성 방식에 따라 포지셔닝 패키지는 Linux 시스템에 미리 설치될 수도 있고 미리 설치되지 않을 수도 있다.locate 유틸리티가 설치되어 있는지 확인하려면 터미널을 열고 locate 를 입력한 다음 Enter 을 누릅니다.패키지가 설치되어 있으면 locate: no pattern to search for specified 가 표시됩니다.그렇지 않으면 유사한 locate command not found 내용이 표시됩니다.설치되지 않은 경우locate 릴리스 패키지 관리자를 사용하여 쉽게 설치할 수 있습니다.

Ubuntu 및 Debian에 locate 설치

sudo apt update sudo apt install mlocate

CentOS 및 Fedora에 locate 설치

sudo yum install mlocate

어떻게 업무를 포지셔닝합니까

locate 명령은 updatedb 명령을 통해 생성된 데이터베이스 파일을 통해 주어진 도안을 검색합니다.찾은 결과는 줄마다 하나씩 화면에 표시됩니다.mlocate 패키지를 설치하는 동안 acron job
생성된 명령은 24시간마다 실행됩니다 updatedb.이렇게 하면 데이터베이스가 정기적으로 업데이트되는 것을 확보할 수 있다.cron 작업에 대한 더 많은 정보는 /etc/cron.daily/mlocate 파일을 보십시오.루트 사용자 또는 sudo 권한이 있는 사용자로 실행할 수 있음updatedb 수동으로 데이터베이스를 업데이트할 수 있음:
sudo updatedb
업데이트 과정은 파일과 디렉터리의 수량, 시스템의 속도에 따라 시간이 걸릴 수 있습니다.데이터베이스가 업데이트된 후 생성된 파일은 위치 추적 결과에 표시되지 않습니다.보다 강력한 find
파일 시스템 검색 명령locate은 더 빠른 속도로 실행되지만 파일 이름으로만 검색할 수 있는 기능이 많이 없습니다.

locate 명령을 사용하는 방법

locate 명령의 구문은 다음과 같습니다.
locate [OPTION] PATTERN...
가장 기본적인 형식에서 옵션을 사용하지 않으면 locate 명령은 검색 모드와 일치하고 사용자가 읽을 수 있는 모든 파일과 디렉터리의 절대 경로를 인쇄합니다.예를 들어, .bashrc라는 파일을 검색하려면 다음과 같이 입력할 수 있습니다.
locate .bashrc
출력은 문자열.bashrc을 포함하는 모든 파일의 이름을 포함합니다.
/etc/bash.bashrc
/etc/skel/.bashrc
/home//.bashrc
/usr/share/base-files/dot.bashrc
/usr/share/doc/adduser/examples/adduser.local.conf.examples/bash.bashrc
/usr/share/doc/adduser/examples/adduser.local.conf.examples/skel/dot.bashrc
파일은 표시되지 않습니다. 일반 사용자로 명령을 실행하기 때문에 사용자가 /root/.bashrc 디렉터리에 접근할 수 있는 권한이 없습니다.결과 목록이 길면 더 나은 가독성을 위해 파이프를 통해 출력을 /root 로 전송할 수 있습니다
명령:
locate .bashrc | less
less 명령은 와일드카드 locate 와 같은 전역 문자를 포함하는 모드도 수락합니다.모드에 글로벌 문자가 없으면 명령이 검색됩니다*.이것이 바로 이전 예시에서 검색 모드를 포함하는 모든 파일을 이름에 표시하는 이유입니다.(adsbygoogle=window.adsbygoogle | |[]).푸시({});와일드카드는 0, 하나 이상의 문자를 나타내는 데 사용되는 기호입니다.예를 들어 시스템의 모든 파일*PATTERN*을 검색하려면 입력:
locate *.md
검색 결과를 제한하려면 .md 옵션을 사용하고 표시할 결과 수를 따라가십시오.다음 명령은 모든 -n 파일을 검색하고 10개의 결과만 표시합니다.
locate -n 10 *.py
기본적으로 .py 는 대소문자를 구분하는 검색을 수행합니다.locate-i 옵션은 --ignore-case 대소문자를 무시하고 대소문자를 구분하지 않는 검색을 실행하는 것을 알려줍니다.
locate -i readme.md
/home//p1/readme.md
/home//p2/README.md
/home//p3/ReadMe.md
일치하는 모든 항목의 수를 표시하려면 locate-c 옵션을 사용합니다.다음 명령은 이름--count에 포함된 모든 파일의 번호를 반환합니다.
locate -c .bashrc
6
기본적으로 .bashrc 찾은 파일이 파일 시스템에 있는지 확인하지 않습니다.최신 데이터베이스가 업데이트된 후에 파일을 삭제하고 검색 모드와 일치하면 검색 결과에 포함됩니다.locate 실행 시 존재하는 파일의 이름만 표시하려면 locate -e 옵션을 사용합니다.예를 들어 다음과 같은 내용은 기존--existing 파일만 되돌려줍니다.
locate -e *.json
더 복잡한 검색을 실행해야 한다면 .json -r 옵션을 사용하십시오. 이 옵션은 모드가 아닌 기본 regexp를 사용할 수 있습니다.이 옵션을 여러 번 지정할 수 있습니다.예를 들어, 시스템의 모든 --regexp.mp4 파일을 검색하고 대소문자를 무시하려면
locate --regex -i "(\.mp4|\.avi)"

결론

.avi 명령을 실행하여 파일 시스템에서 이름이 지정된 패턴과 일치하는 파일 및 디렉토리를 검색합니다.명령 문법은 기억하기 쉬워서 결과는 거의 즉시 나타날 수 있다.터미널locate 명령 유형locate에 대한 사용 가능한 모든 옵션에 대한 자세한 정보.질문이 있으시면 언제든지 논평을 주십시오.