강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

특정패턴에 해당하는 파일들의 위치를 검색하는 locate 활용법

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

특정패턴에 해당하는 파일들의 위치를 검색하는 locate 활용법

 

 

 

 

다음 locate라는 명령어는 다양한 패턴의 파일들을 찾고자 할 때 매우 유용하게 사용되는 명령어로서 특정 패턴에 해당하는 파일들의 위치를 검색한다.

 

 

 

 

 

우리는 이번 장의 앞부분에서 특정명령어를 찾고자 할 때에는 find which, whereis등을 사용한다라고 이미 배웠다.

 

 

 

  하지만 locate명령어는 특정 명령어를 찾을 때 사용하는 명령어라기 보다는 특정 패턴에 부합하는 파일을 찾고자 할 때 사용하는 명령어이다.

 

 

 

  이런 의미에서 특정 명령어의 위치를 찾을 때 사용하는 which, whereis등과는 차이점이 있다.

 

 

 

 그리고 locate는 특정 파일을 검색하는 find와 거의 유사한 명령어이지만 사용방법에는 차이가 있다.

 

 

 

 

 

간단한 예부터 확인해 보도록 하자. 

 

현재 시스템에 존재하는 *.bak에 해당하는 파일을 찾은 예이다.

 

 

 

  , *.bak파일을 찾아서 불필요한 파일을 삭제하고자 할 때에 사용한 예이다.

 

 

 

 

 

[root@sulinux ~]# locate *.bak

/usr/lib/perl5/5.10.0/i386-linux-thread-multi/CORE/patchlevel.bak

/usr/share/texmf/fonts/source/public/cmcyr/coding.bak

/var/lib/nfs/statd/sm.bak

[root@sulinux ~]#

 

 

 

 

그리고 다음은 특정 패턴에 해당하는 파일들 가운데 지정한 개수만큼만을 검색한 예이다.

 

 

 

 ,  10개의 *.conf패턴에 해당하는 파일만을 찾는 예이다.

 

 

 

  실제로 리눅스시스템에는 *.conf파일이 수없이 많이 존재하므로 한 페이지에 모두 볼 수가 없기 때문에 확인하고픈 개수를 지정하여 검색한 것이다.

 

 

 

 

 

[root@sulinux ~]# locate -n 10 *.conf

/boot/grub/grub.conf

/etc/Trolltech.conf

/etc/asound.conf

/etc/capi.conf

/etc/dhcp6c.conf

/etc/dnsmasq.conf

/etc/esd.conf

/etc/gpm-root.conf

/etc/gpm-syn.conf

/etc/gpm-twiddler.conf

[root@sulinux ~]#

 

 

 

 

그리고 다음은 특정패턴에 해당하는 파일들 가운데 특정 문자열을 가진 파일들만을 검색하는 예이다.

 

 

 

  현재 시스템에 존재하는 *.conf파일들 중에서 httpd와 관련된 *.conf파일을 찾은 예로서 이는 locate의 결과 중에서 grep을 사용하여 특정 문자에 해당하는 결과만을 출력한 것이다.

 

 

 

 

 

[root@sulinux ~]# locate *.conf | grep httpd

/etc/httpd/conf/httpd.conf

/etc/httpd/conf.d/manual.conf

/etc/httpd/conf.d/perl.conf

/etc/httpd/conf.d/php.conf

/etc/httpd/conf.d/proxy_ajp.conf

/etc/httpd/conf.d/python.conf

/etc/httpd/conf.d/squid.conf

/etc/httpd/conf.d/ssl.conf

/etc/httpd/conf.d/webalizer.conf

/etc/httpd/conf.d/welcome.conf

/root/httpd/conf/httpd.conf

/root/httpd/conf.d/manual.conf

/root/httpd/conf.d/perl.conf

/root/httpd/conf.d/php.conf

/root/httpd/conf.d/proxy_ajp.conf

/root/httpd/conf.d/python.conf

/root/httpd/conf.d/squid.conf

/root/httpd/conf.d/ssl.conf

/root/httpd/conf.d/webalizer.conf

/root/httpd/conf.d/welcome.conf

/root/httpd2/conf/httpd.conf

/root/httpd2/conf.d/manual.conf

/root/httpd2/conf.d/perl.conf

/root/httpd2/conf.d/php.conf

/root/httpd2/conf.d/proxy_ajp.conf

/root/httpd2/conf.d/python.conf

/root/httpd2/conf.d/squid.conf

/root/httpd2/conf.d/ssl.conf

/root/httpd2/conf.d/webalizer.conf

/root/httpd2/conf.d/welcome.conf

/usr/share/doc/jpackage-utils-1.7.5/httpd-javadoc.conf

[root@sulinux ~]#

 

방법은 특정패턴의 모든 파일 가운데 특정 문자열에 해당하는 파일들을 모두 검색하고자 때에 사용하는 방법이다.

 

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,038 명
  • 현재 강좌수 :  35,818 개
  • 현재 접속자 :  109 명