웹사이트 검색

Linux 초보자를 위한 10가지 유용한 'locate' 명령 실제 예


Linux 플랫폼을 처음 사용하는 대부분의 사용자가 일반적으로 직면하는 가장 불쾌한 경험 중 하나는 시스템에서 파일을 검색하는 가장 간단하면서도 효과적인 방법을 찾을 수 없다는 것입니다.

거의 모든 다른 운영 체제와 마찬가지로 Linux는 여러 메커니즘을 활용하여 사용자의 검색 쿼리에 응답합니다. 사용자가 액세스할 수 있는 가장 인기 있는 파일 검색 유틸리티 중 두 가지는 찾기 및 찾기입니다.

이제 두 검색 프로세스 모두 매우 잘 작동한다는 점을 기억하는 것이 중요합니다. 그럼에도 불구하고 이 기사의 중심은 locate 유틸리티에 더 집중할 것입니다. 이 유틸리티는 둘 중 더 효율적으로 사용하므로 더 편리합니다. 사용자가 입력한 쿼리를 빠르게 처리하는 방법.

찾기 유틸리티는 파일 검색이 시작될 때 파일 시스템을 검색하는 대신 – 찾기 기능 – 찾기가 데이터베이스를 검색하기 때문에 찾기 유틸리티보다 더 빠르고 효율적으로 작동합니다. 이 데이터베이스에는 파일의 일부와 시스템의 해당 경로가 포함되어 있습니다.

다음은 Linux 시스템의 생산성을 높이는 데 도움이 되는 10가지 간단한 찾기 명령입니다.

1. 찾기 명령 사용

파일을 찾기 위해 Locate 명령을 실행하는 것은 매우 쉽고 간단합니다. 당신이 해야 할 일은 다음을 입력하는 것 뿐입니다:


$ locate LAMP-Setup.odt

/home/tecmint/LAMP-Setup.odt
/home/tecmint/TecMint.com/LAMP-Setup.odt

2. 검색어를 특정 숫자로 제한

-n 명령을 사용하면 검색 결과가 중복되는 것을 방지하기 위해 검색 결과를 필요한 수로 제한할 수 있습니다.

예를 들어, 쿼리에서 20개의 결과만 원하는 경우 다음 명령을 입력할 수 있습니다.


$ locate "*.html" -n 20

/home/tecmint/.config/google-chrome/Default/Extensions/aapocclcgogkmnckokdopfmhonfmgoek/0.9_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/aohghmighlieiainnegkcijnfilokake/0.9_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/felcaaldnbdncclmgdcncolpebgiejap/1.1_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/kbfnbcaeplbcioakkpcpgfkobkghlhen/14.752.848_0/forge.html
/home/tecmint/.config/google-chrome/Default/Extensions/kbfnbcaeplbcioakkpcpgfkobkghlhen/14.752.848_0/src/popup.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/additional-feature.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/background.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/edit.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/help.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/options.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/popup.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/purchase.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/upload.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/oauth2/oauth2.html
/home/tecmint/.config/google-chrome/Default/Extensions/nmmhkkegccagdldgiimedpiccmgmieda/1.0.0.2_0/html/craw_window.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_route_details.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/feedback.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/devices.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/index.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/offers.html

결과에는 .html로 끝나는 처음 20개의 파일이 표시됩니다.

3. 일치하는 항목 수 표시

"tecmint" 파일에서 일치하는 모든 항목의 수를 표시하려면 locate -c 명령을 사용하세요.


$ locate -c [tecmint]*

1550

4. 대소문자 구분 찾기 출력 무시

기본적으로 찾기는 대소문자를 구분하여 쿼리를 처리하도록 구성됩니다. 즉, TEXT.TXTtext.txt와 다른 결과를 가리킵니다. .

locate 명령이 대소문자 구분을 무시하고 대문자 및 소문자 쿼리에 대한 결과를 표시하도록 하려면 명령에 -i 옵션을 사용하여 입력하세요.


$ locate -i *text.txt*

/home/tecmint/TEXT.txt
/home/tecmint/text.txt

5. mlocate 데이터베이스 새로 고침

locate 명령은 mlocate라는 데이터베이스에 의존하기 때문입니다. 명령 유틸리티가 작동하려면 해당 데이터베이스를 정기적으로 업데이트해야 합니다.
효율적으로.

mlocate 데이터베이스를 업데이트하려면 updatedb라는 유틸리티를 사용합니다. 이것이 제대로 작동하려면 수퍼유저 권한이 필요하며, 루트 또는 sudo 권한으로 실행해야 한다는 점에 유의해야 합니다.


sudo updatedb

6. 시스템에 있는 파일만 표시

업데이트된 mlocate 데이터베이스**가 있는 경우에도 locate 명령은 시스템에서 물리적 복사본이 삭제된 파일의 결과를 계속 생성합니다.

명령을 입력할 때 컴퓨터에 없는 파일 결과가 표시되지 않도록 하려면 locate-e 명령을 사용해야 합니다. 이 프로세스는 찾고 있는 파일이 mlocate.db에 아직 존재하더라도 시스템을 검색하여 해당 파일이 있는지 확인합니다.


$ locate -i -e *text.txt*

/home/tecmint/text.txt

7. 새 줄 없이 출력 항목 분리

locate 명령의 기본 구분 기호는 줄 바꿈 (\\n) 문자입니다. 그러나 ASCII NUL과 같은 다른 구분 기호를 사용하려는 경우 -0 명령줄 옵션을 사용하면 됩니다.


$ locate -i -0 *text.txt*

/home/tecmint/TEXT.txt/home/tecmint/text.txt

8. 위치 데이터베이스를 검토하세요

mlocate.db의 현재 상태가 확실하지 않은 경우 -S 명령을 사용하여 데이터베이스 찾기 통계를 쉽게 볼 수 있습니다.


$ locate -S

Database /var/lib/mlocate/mlocate.db:
	32,246 directories
	4,18,850 files
	2,92,36,692 bytes in file names
	1,13,64,319 bytes used to store database

9. 찾기에서 오류 메시지 억제

지속적으로 위치 데이터베이스에 액세스하려고 시도하면 mlocate.db에 대한 루트 액세스 권한을 갖는 데 필요한 권한이 없다는 불필요한 오류 메시지가 나타나는 경우가 있습니다. 왜냐하면 귀하는 일반 사용자일 뿐이고 일반 사용자가 아니기 때문입니다. 슈퍼유저가 필요합니다.

이러한 메시지를 완전히 없애려면 -q 명령을 사용하십시오.


locate "\*.dat" -q*

10. 다른 mlocate 위치 선택

기본 mlocate 데이터베이스에 없는 결과를 찾는 쿼리를 입력하고 시스템의 다른 곳에 있는 다른 mlocate.db에서 답변을 원하는 경우 -d 명령을 사용하여 시스템의 다른 부분에 있는 다른 mlocate 데이터베이스에 명령을 찾습니다.


locate -d <new db path> <filename>

locate 명령은 별다른 번거로움 없이 요청한 모든 작업을 수행하는 유틸리티 중 하나로 보일 수 있지만 실제로는 프로세스의 효율성을 유지하기 위해 mlocate.db 때때로 정보를 제공받아야 합니다. 그렇게 하지 않으면 프로그램이 약간 쓸모 없게 될 수 있습니다.