Fundamentals

본문 바로가기
사이트 내 전체검색


RedHat Linux >> Fundamentals of the GNU/Linux
[목차]
제3장 리눅스 명령어

    10. 파일 찾기 - find


dos에서 원하는 파일을 찾을 때 어떻게 했습니까? 필자의 경우에는 'dir' 명령어로 원하는 파일을 찾았습니다.

c:\>dir/w test.txt /s [enter]

이런 식으로 하면 c 드라이브에 있는 모든 디렉토리를 찾아서 test.txt라는 파일을 찾게 됩니다. 이러한 기능을 하는 명령어로 리눅스는 따로 'find'를 제공합니다. 이 명령어는 많이 사용하는 것이므로 그 사용법을 잘 알아두기 바랍니다.

먼저 일반적인 사용 방법부터 알아봅니다.

[root@leelab /root]# find / -name han*

/etc/profile.d/hangul-init.csh

/etc/profile.d/hangul-init.sh

/etc/x11/wmconfig/hanterm

/etc/han.cfg

.

/home/httpd/html/manual/handler.html

/usr/bin/han

[root@leelab /root]#

일단 제일 마지막에 붙은 아규먼트를 보니 전체적으로 어떤 의미인지는 알겠죠? 바로 'han'으로 시작되는 모든 파일을 찾는다는 의미입니다.

두 번째 아규먼트에 보면 '/' 으로 되어 있는 데 이것은 루트 디렉토리를 의미하는 것입니다. 즉 'han'으로 시작되는 파일을 루트 디렉토리부터 찾으라는 의미죠. 어떤 특별한 디렉토리 밑에 있는 파일을 찾고 자 한다면 그 디렉토리명을 이 두 번째 아규먼트에 지정하면 됩니다. 그러면 세 번째 아규먼트인 '-name'은 무엇을 의미할까요? 일단 앞에 '-'가 붙은 것을 보니 옵션일 거라는 생각이 드는군요. 바로 파일을 이름으로 찾겠다는 것을 의미하는 것입니다. 'find' 명령어로 파일을 찾을 때 이름으로 찾지 않고 다른 어떤 것으로 찾고자 한다면 다른 옵션을 붙여서 사용하면 됩니다.

그러면 '-name' 대신에 올 수 있는 다른 옵션에 대해 알아봅니다. 액세스된 시간이나 수정된 시간을 가지고 파일을 찾는 방법이 있습니다.

[root@leelab /root]# find /book -amin 10

/book/linux/chap3/chap3. bak

[root@leelab /root]#

10분전에 마지막으로 액세스된 파일을 찾는 과정을 나타내고 있습니다. 조금 오래된 파일이라면 분으로 찾지 말고 시간으로 찾으면 됩니다.

[root@leelab /root]# find / -atime 1

/sbin/mailconf

/sbin/mkdosfs

/sbin/quotaoff

.

.

/sbin/telinit

/sbin/clock

[root@leelab /root]#

24시간 전에 액세스된 파일을 찾고 있는 것입니다. 마지막 아규먼트로 '2'를 지정하면 이것은 48 시간전이 됩니다. 즉 단위가 하루라고 생각하면 됩니다.

이번에는 앞의 옵션과 비슷한 'c'로 시작하는 옵션에 대해 알아봅니다. 앞의 'a'로 시작하는 옵션은 액세스된 시간으로 파일을 찾았는데 사실 이 옵션은 잘 쓰이지 않습니다. 액세스된 시간은 크게 중요하지 않거든요. 우리가 찾으려는 파일은 대부분 수정된 시간을 이용해서 많이 찾습니다.

[root@leelab /root]# find / -cmin 5

/usr/hwpx/sys/hwphqf.lst

/book/linux/chap3/chap3.hwp

[root@leelab /root]#

5분전에 마지막으로 수정된 파일을 찾고 있는 과정을 나타내고 있습니다. 이것 역시 시간 단위로 찾는 방법도 있습니다.

[root@leelab /root]# find / -ctime 1

/var/catman/cat1/mv.1.gz

/var/catman/cat1/find.1.gz

/home

[root@leelab /root]#

역시 의미는 24시간 전에 수정된 파일을 찾고자 하는 것입니다.

이번에는 마지막으로 아주 유용한 옵션 한 가지만 더 알아보겠습니다. 비어있는 파일이나 디렉토리를 찾는 옵션인데 한번 사용해 보기 바랍니다. 생각보다 비어있는 파일이나 디렉토리가 많을 것입니다.

[root@leelab /root]# find /home -empty

/home/ftp/pub

/home/samba

.

.

[root@leelab /root]#

[목차]

개인정보취급방침 서비스이용약관 모바일 버전으로 보기 상단으로

TEL. 063-469-4551 FAX. 063-469-4560 전북 군산시 대학로 558
군산대학교 컴퓨터정보공학과

Copyright © www.leelab.co.kr. All rights reserved.