집 >운영 및 유지보수 >리눅스 운영 및 유지 관리 >Linux에서 빠르게 파일 찾기
리눅스를 사용하다 보면 파일을 검색해야 하는 경우가 종종 있습니다. 주요 검색 명령은 find와 grep이며, 두 명령에는 차이점이 있습니다.
차이점:
(1) find 명령은 파일 이름, 파일 크기, 소유자, 그룹, 비어 있는지 여부, 액세스 시간, 수정 시간 등과 같은 파일의 속성을 기반으로 검색합니다.
(2) grep은 파일의 내용을 기준으로 검색하고, 주어진 패턴(patter)에 따라 파일의 각 줄을 검색합니다.
(3) 실행 파일의 위치를 보면, 환경 변수가 설정된 프로그램만 사용할 수 있습니다
(4) 특정 파일을 찾으면 바이너리 파일, 소스 코드 파일, 매뉴얼 페이지를 찾는 데에만 사용할 수 있습니다
(5) 찾기 데이터베이스를 사용하여 파일 위치 보기, 세부 정보: find -h 도움말 정보 보기
1. 명령 찾기
기본 형식: 경로 표현 찾기
1. 파일 이름으로 검색
(1) find / -name httpd .conf #루트 디렉터리에서 httpd.conf 파일을 찾습니다. 이는 전체 하드 디스크를 검색한다는 의미입니다
(2)find /etc -name httpd.conf #httpd.conf 파일 찾기
(3) /etc 찾기 - 이름 '*srm*' #와일드카드 사용 * (0 이상). /etc 디렉터리의 파일 이름에 'srm' 문자열이 포함된 파일을 검색함을 나타냅니다.
(4)find . -name 'srm*' #현재 디렉터리에서 파일 이름이 'srm 문자열로 시작하는 파일을 검색함을 나타냅니다. '
2. 파일 특성에 따라 검색
(1)find/-amin -10 #시스템에서 최근 10분 동안 접속한 파일 찾기(접근 시간)
(2)find/-atime -2 #Find 시스템의 마지막 48분 매 시간마다 액세스되는 파일
(3)find / -empty # 시스템에서 비어 있는 파일 또는 폴더 찾기
(4)find / -group cat (3)find / -empty (4 )find / -group cat (3)find / -empty # 시스템에서 비어 있는 파일 또는 폴더 찾기
(4)find / -group cat (3)find / -empty (4)찾기 / -그룹 고양이 ( 3)find / -empty (4)find /
(3)find / -group cat (3)find / -empty # 시스템에 비어 있는 파일 또는 폴더 찾기 (4)찾기 / -그룹 고양이 (3 )find / -empty (5) )find / -mmin -5 #시스템에서 지난 5분 동안 수정된 파일 찾기(수정 시간) (6)find / -mtime -1 #시스템에서 수정된 파일 찾기 시스템에서 지난 24시간 동안 (7)find / -user fred #시스템에서 fred 사용자에게 속한 파일 찾기 (8)find / -size +10000c #10000000바이트보다 큰 파일 찾기(c:바이트, w: 더블워드, k:KB, M:MB, G:GB) (9)find/-size -1000k #1000KB 미만의 파일 찾기 3. 혼합 검색 방법을 사용하여 파일 찾기 매개변수는 다음과 같습니다. : ! ,-및(-a),-또는(-o). (1)find /tmp -size +10000c -and -mtime +2 # /tmp 디렉터리에서 10000바이트보다 크고 지난 2분 이내에 수정된 파일을 찾습니다. (2)find / -user fred - 또는 -user george # 사용자가 fred 또는 george인 / 디렉토리에서 파일 찾기 (3)find /tmp ! -user panda # /tmp 디렉토리에서 panda 사용자에 속하지 않는 모든 파일 찾기2. grep 명령어 기본 형식: find 표현식 1. 주요 매개변수 [옵션] 주요 매개변수: -c: 일치하는 행의 개수만 출력합니다. -i: 대소문자 구분 안 함 -h: 여러 파일을 쿼리할 때 파일 이름이 표시되지 않습니다. -l: 여러 파일을 쿼리할 때 일치하는 문자가 포함된 파일 이름만 출력됩니다. -n: 일치하는 줄과 줄 번호를 표시합니다. -s: 존재하지 않거나 일치하는 텍스트가 없는 오류 메시지를 표시하지 않습니다. -v: 일치하는 텍스트가 포함되지 않은 모든 줄을 표시합니다. 패턴 정규식의 주요 매개변수: : 정규식에서 특수 문자의 원래 의미를 무시합니다. ^: 정규 표현식의 시작 줄과 일치합니다. $: 정규 표현식의 끝 줄과 일치합니다. <: 정규식과 일치하는 줄부터 시작합니다. >: 정규식과 일치하는 줄의 끝까지. [ ]: [A]와 같은 단일 문자는 A가 요구 사항을 충족함을 의미합니다. [-]: [A-Z]와 같은 범위, 즉 A, B, C ~ Z가 모두 요구 사항을 충족합니다. .: 모두 단일 문자입니다. * : 문자가 있으며, 길이는 0이 될 수 있습니다. 2. 예시 grep -r "string" 은 매우 편리합니다 (1) grep 'test' d* # d (2) grep 'test' aa bb cc #aa, bb, cc 파일에서 test가 포함된 줄 표시 (3) grep '[a-z]{5}' aa # 문자열의 각 줄에 5개 이상의 연속된 소문자를 포함하는 모든 줄 표시 Line🎜🎜 (4 )grep Magic /usr/src #/usr/src 디렉터리(하위 디렉터리 제외)에 있는 파일에서 Magic이 포함된 줄을 표시합니다🎜
(5)grep -r Magic /usr/src # 매직 라인이 포함된 /usr/src 디렉터리(하위 디렉터리 포함)에 있는 파일을 표시합니다.
(6)grep -w 패턴 파일: 문자가 아닌 전체 단어만 일치합니다. 문자열(예: 'magical'이 아닌 'magic' 일치)
더 많은 Linux 관련 기술 기사를 보려면 Linux Tutorial 열을 방문하여 알아보세요!
위 내용은 Linux에서 빠르게 파일 찾기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!