이 기사에서는 다양한 도구를 사용하여 Linux에서 파일을 찾는 방법을 배웁니다.
Linux에서 가장 널리 사용되는 파일 검색 도구
그만큼
파일 이름으로 검색하기
“Find” is one of the most popular tools to search files in Linux. When you know the file name you can search for it using command below. Replace “/home” with a folder to search through and “filename.txt” with the file name.
$ 찾기 /집 -이름 파일 이름.txt
현재 폴더에서 파일을 검색하려면 바꾸기
$ 찾기 . -이름 Documents.zip ./문서.zip
정확한 파일 이름을 모르는 경우 정규식을 사용하여 일치하는 항목을 찾으십시오. 별표(*) 기호는 다음 문자 세트와 일치합니다.
$ find /home -name "문서*" /home/eugene/Documents.zip /home/eugene/문서 /홈/유진/전화/문서
수정일자로 검색하기
오늘 수정된 파일을 검색하려면 다음을 추가하세요.
$ 찾기 /집 -mtime 0
예를 들어 10일 전에 수정된 사진을 찾아보겠습니다.
$ 사진 찾기/ -mtime 10 2023-11-03 10-29-49.png의 사진/스크린샷/스크린샷
파일 형식으로 검색하기
그만큼
디렉토리 검색: 지정된 경로 내의 모든 디렉터리를 찾으려면 -type d 옵션을 사용합니다.
$ 찾기 /집 -유형 d
일반 파일 검색: 반대로, 일반 파일을 찾으려면 -type f 옵션을 사용하십시오.
$ 찾기 /집 -유형 f -이름 "*.txt"
심볼릭 링크 검색: 심볼릭 링크를 검색하려면 -type l 옵션을 사용하세요.
$ find /home -type l -name "링크이름"
특정 파일 확장자 검색: 파일 확장자를 지정하여 검색 범위를 좁히세요.
$ 찾기 /집 -유형 f -이름 "*.jpg"
결합기준
여러 기준을 결합하여 보다 정확한 검색을 수행할 수 있습니다. 여기
특정 확장자를 가진 수정된 파일 검색: 확장자를 사용하여 최근 7일 동안 수정된 파일을 찾습니다.
$ find /var/logs -type f -name "*.log" -mtime -7
특정 날짜 범위 사이에 수정된 파일 검색: 2023년 11월 1일부터 2023년 11월 5일 사이에 수정된 파일을 찾습니다.
$ 찾기 /home -newermt 2023-11-01 ! -newermt 2023-11-06
추가의
대소문자 구분 무시: 검색 시 대소문자를 구분하지 않으려면 -iname 옵션을 사용하십시오.
$ find /home -iname "문서*"
검색 깊이 제한: -max깊이 옵션을 사용하여 검색 깊이를 특정 수준으로 제한합니다.
$ 찾기 /home -max깊이 2 -이름 "*.txt"
특정 디렉터리 제외: -not 또는 !를 사용하여 검색에서 특정 디렉토리를 제외하십시오. 옵션.
$ find /home -type f -name "*.txt" -not -path "/home/user/exclude/*"
기억하세요.
다음을 사용하여 파일 콘텐츠로 검색
파일 내에서 특정 콘텐츠를 찾는 경우,
기본 콘텐츠 검색: 파일에서 특정 문자열을 검색하려면 다음 구문을 사용하십시오.
$ grep "search_string" 파일 이름
바꾸다
여러 파일에서 검색: 여러 파일을 검색하려면 와일드카드나 특정 파일 패턴을 제공하세요.
$ grep "패턴" /path/to/files/*.txt
대소문자를 구분하지 않는 검색: -i 옵션을 사용하여 검색에서 대소문자를 구분하지 않도록 설정하세요.
$ grep -i "패턴" 파일 이름
표시 줄 번호: 패턴이 발견된 줄 번호를 알고 싶다면 -n 옵션을 사용하세요.
$ grep -n "패턴" 파일 이름
파일 이름만 표시: 패턴이 포함된 파일 이름만 표시하려면 -l 옵션을 사용하세요.
$ grep -l "패턴" /path/to/files/*.txt
재귀적으로 검색: 디렉토리 및 하위 디렉토리 내의 모든 파일에서 패턴을 검색하려면 -r 옵션을 사용하십시오.
$ grep -r "패턴" /경로/to/디렉토리
파일 또는 디렉터리 제외: 다음을 사용하여 검색에서 특정 파일이나 디렉터리를 제외하세요.
$ grep "pattern" --exclude=*.log /path/to/files/*
전체 단어 검색: 전체 단어를 검색하려면 -w 옵션을 사용하여 부분 일치를 방지합니다.
$ grep -w "단어" 파일 이름
고급의
반전된 일치 항목 검색: -v 옵션을 사용하여 지정된 패턴을 포함하지 않는 행을 표시하도록 일치 항목을 반전시킵니다.
$ grep -v "패턴" 파일 이름
일치 항목 계산: 패턴이 포함된 행 수를 알고 싶다면 -c 옵션을 사용하십시오.
$ grep -c "패턴" 파일 이름
일치하는 텍스트만 표시: -o 옵션을 사용하여 패턴과 일치하는 텍스트만 표시합니다.
$ grep -o "패턴" 파일 이름
줄 번호를 사용한 재귀 검색: 포괄적인 검색을 위해 옵션을 결합합니다. 예:
$ grep -r -n "패턴" /경로/to/디렉토리
마스터하기
대체 파일 검색 방법
강력한 것 외에도
Python 스크립트를 사용하여 파일 찾기
때로는 사용자 정의 Python 스크립트가 파일 검색에 더 많은 유연성을 제공할 수 있습니다. 여기 운영 체제 그리고 fnmatch 모듈:
수입 운영 체제
~에서 fnmatch 수입 fnmatch
데프 find_files(디렉토리, 패턴):
~을 위한 루트, 디렉토리, 파일 ~에 os.walk(디렉토리):
~을 위한 파일 ~에 파일:
만약에 fnmatch(파일, 패턴):
인쇄(os.path.join(루트, 파일))
# Usage
find_files('/경로/대상/검색', '*.txt')
이 스크립트는 지정된 패턴을 기반으로 파일을 일치시키면서 디렉터리와 해당 하위 디렉터리를 탐색합니다. 사용자 정의 find_files 특정 검색 기준에 맞게 기능을 수행합니다.
그만큼
그만큼위치하고 있다” command is another efficient way to find files on a Linux system. It uses a pre-built index, making searches faster compared to the “find” command. However, keep in mind that the index needs regular updates to include recent changes.
데이터베이스 찾기 업데이트:
$ sudo 업데이트됨
파일 검색:
$ 파일 이름.txt 찾기
사용하여
당신이
실행 파일 위치 찾기:
$ 실행 파일 이름
사용
그만큼
fd를 설치합니다:
$ sudo apt-get install fd-find # For Ubuntu/Debian $ sudo dnf install fd # For Fedora
파일 검색:
$ fdfind 문서 전화/문서 문서 문서.zip
사용자 정의 스크립트 및 별칭
마지막으로 사용자 정의 셸 스크립트나 별칭을 만들어 파일 검색 프로세스를 간소화할 수 있습니다. 예를 들어:
# Custom Alias alias findtxt='find /path/to/search -name "*.txt"' # Usage $ findtxt
사용자 정의 스크립트 및 별칭을 사용하면 특정 파일 검색 요구 사항에 맞는 바로가기를 만들어 작업 흐름을 향상할 수 있습니다.
Bash 스크립트를 사용하여 Linux에서 파일 찾기
Bash 스크립트를 생성하고 사용하면 Linux에서 반복적인 파일 검색 작업을 자동화하는 데 도움이 됩니다. 다음은 제공된 패턴을 기반으로 파일을 검색하는 간단한 Bash 스크립트의 예입니다.
#!/bin/bash # Bash script to find files based on a pattern if [ $# -ne 2 ]; then echo "Usage: $0 <directory> <pattern>" exit 1 fi directory=$1 pattern=$2 # Check if the directory exists if [ ! -d "$directory" ]; then echo "Error: Directory $directory not found." exit 1 fi # Use find command to search for files find "$directory" -name "$pattern" -print
이 스크립트를 find_files.sh와 같은 파일에 저장하고 다음 명령을 사용하여 실행 가능하게 만듭니다.
$ chmod x find_files.sh
이제 스크립트를 사용하여 디렉터리와 패턴을 인수로 제공하여 파일을 검색할 수 있습니다.
$ ./find_files.sh /path/to/search "*.txt"
이 스크립트는 올바른 수의 인수가 제공되었는지와 지정된 디렉터리가 존재하는지 확인합니다. 그런 다음 find 명령을 사용하여 주어진 패턴을 기반으로 파일을 검색합니다.
보너스: Linux에서 이미지를 검색하는 방법
Linux에는 이미지 검색을 위한 여러 도구와 방법이 있으며 각각 고유한 특징과 기능을 제공합니다. 다음은 몇 가지 옵션입니다.
“find” Command with File Type Filtering:
표준
$ find /path/to/images -type f -name "*.jpg"
그만큼
그만큼
$ sudo apt-get install fd-find # For Ubuntu/Debian $ sudo dnf install fd # For Fedora
특정 확장자를 가진 이미지 검색:
$ fdfind -e jpg
그만큼
그만큼
$ '*.jpg' 찾기
최근 변경 사항에 대해 정기적으로 위치 데이터베이스를 업데이트하는 것을 잊지 마십시오.
$ sudo 업데이트됨
“grep” Command for Specific Image Names:
이미지 파일에 대한 특정 명명 규칙이 있는 경우 다음을 사용할 수 있습니다.
$ grep -r '패턴' /경로/대상/이미지
바꾸다
“file” Command
그만큼
$ 파일 /경로/대상/이미지/*
다음을 포함하는 행을 찾으십시오.
“feh” Image Viewer with Filelist
이미지 파일 목록이 있고 이를 보려면
$ feh -f $(find /path/to/images -type f -name "*.jpg")
그러면 지정된 디렉터리에 있는 모든 JPEG 파일의 파일 목록이 포함된 이미지 뷰어가 열립니다.
이미지 메타데이터 도구 사용
이미지에 메타데이터가 있는 경우 다음과 같은 도구를 사용할 수 있습니다.
$ Exiftool -파일 이름 -r /경로/to/이미지 | grep '검색어'
그래픽 파일 관리자
Nautilus, Dolphin 또는 Thunar와 같은 그래픽 파일 관리자는 종종 검색 기능을 제공합니다. 해당 디렉토리로 이동하고 검색창을 사용할 수 있습니다.
태그 기반 이미지 정리 도구
다음과 같은 도구
요약
결론적으로 Linux에서 파일 검색을 마스터하려면 다양한 명령, 도구 및 스크립팅 기술을 이해하고 결합해야 합니다. 당신이






