Linux에서 Find 명령의 7가지 강력한 사용
좋아요, 이 단락의 깊은 의사 원본 버전을 만들어 볼 수 있습니다. 이것은 내 수정된 버전입니다:
Linux에서 find 명령은 Windows Server를 사용하지 않는 한 백엔드 개발자가 마스터해야 하는 작업 중 하나입니다.
기술면접에서도 자주 나오는 주제입니다. 실제 질문은 다음과 같습니다.
Linux 서버에 로그라는 디렉터리가 있는 경우 마지막으로 액세스한 지 1년이 넘은 로그 파일을 어떻게 삭제합니까?
이런 상황은 매우 흔한 일이지만 놀랍게도 모든 개발자가 인터뷰에서 이 명령을 명확하게 작성할 수 있는 것은 아닙니다.
답변: 먼저 cd 명령을 사용하여 해당 디렉터리로 들어가야 합니다. 그런 다음 명령은 다음과 같습니다.
으아악
위 명령을 완전히 이해하지 못하더라도 걱정하지 마세요. 이 기사에서는 find 명령의 7가지 실제 사용법을 소개하여 결국에는 이를 마스터할 수 있습니다. 이미 알고 계시다면 이 글을 읽어보시면 큰 도움이 될 것입니다.
1. 파일 이름이나 정규 표현식을 기준으로 파일 찾기
가장 간단한 사용법부터 시작해 보겠습니다. 특정 이름으로 파일을 검색하려면 다음 명령을 사용하세요.
으아악
위 코드의 . 기호는 현재 경로를 나타냅니다. 다른 경로에서 파일을 검색하려면 다음을 지정하세요.
으아악
PNG 형식의 모든 이미지를 찾는 방법은 무엇입니까? 정규식을 사용하세요:
으아악기본적으로 find 명령은 일반 파일을 검색하지만 모든 것을 더 명확하게 하기 위해 유형을 지정하는 것이 더 좋습니다.
으아악2. 다양한 유형의 파일 찾기
일반 파일 검색 외에도 -type 옵션을 지정하여 다른 유형의 파일도 검색할 수 있습니다.
예를 들어 디렉토리:
으아악또는 심볼릭 링크:
으아악3. 특정 타임스탬프를 기준으로 파일 찾기
특정 타임스탬프로 파일을 검색하려면 Linux 시스템의 3가지 타임스탬프에 대해 알아야 합니다.
액세스 타임스탬프(atime): 파일을 마지막으로 읽은 시간입니다. 수정 타임스탬프(mtime): 파일 콘텐츠가 마지막으로 수정된 시간입니다. 타임스탬프 변경(ctime): 소유권, 위치, 파일 형식, 권한 설정 등 파일이 마지막으로 변경된 시기와 같은 파일의 메타데이터입니다.
그래서 처음에 언급한 인터뷰 질문과 마찬가지로 1년이 넘은 파일을 검색하려면 다음 명령을 작성할 수 있습니다.
으아악
mtime이 정확히 5일 전인 파일을 찾아야 하는 경우 "보다 큼"을 의미하는 + 기호를 포함하지 마세요.
으아악
분명히 + 기호는 "보다 큼"을 의미하고 - 기호는 "보다 작음"을 의미합니다. 따라서 ctime이 5~10일 사이인 파일을 검색할 수 있습니다.
으아악
4. 파일 크기별로 파일 찾기
-size 옵션을 사용하면 특정 크기로 파일을 찾을 수 있습니다. 다음 규칙을 사용하여 측정 단위를 지정할 수 있습니다.
-
b
:512字节块(默认)
-
c
:字节
-
w
:两字节单词
-
k
:千字节
-
M
:兆字节
-
G
:千兆字节
与按时间戳查找文件类似,+号表示“大于”,-号表示“小于”。例如,要查找大小在10兆字节和1千兆字节之间的文件:
find . -type f -size +10M -size -1G
5、按权限查找文件
适当控制文件的权限是Linux管理员的重要任务。find命令的-perm选项可以帮助我们按特定权限搜索文件:
find . -type f -perm 777
例如,上述命令将搜索所有具有777权限的文件,这意味着文件对其所有者、组和所有用户具有读、写和执行权限。
6、按文件所有者查找文件
这个任务很简单。我们只需要在-user选项中指定一个用户名。例如,以下命令将找到所有属于 linuxmi 的文件:
find -type f -user linuxmi
7、在查找文件后执行命令
在大多数情况下,我们希望在找到所需文件后执行一些后续操作,例如删除它们、检查它们的详细信息等等。-exec命令使所有这些操作变得更加简单。
现在,为了理解如何使用它,让我们回到之前提到的面试问题:
find . -type f -atime +365 -exec rm -rf {} ;
上述命令中-exec选项后面是rm -rf,用于删除文件。{}是找到的结果的占位符。
注意:占位符{}非常重要,特别是如果你想要删除文件。因为如果你不使用它,命令将对所有文件执行,而不仅仅是通过find命令找到的文件。
为了尝试一下,在终端上执行以下两个命令并检查它们的结果有什么不同:
一个使用了占位符:
find . -type f -atime +5 -exec ls {} ;
另一个没有使用:
find . -type f -atime +5 -exec ls ;
跟在-exec选项后面的命令必须以分号结束。正如我们所知,转义字符用于取消单个字符的特殊含义。在Linux中,反斜杠\被用作转义字符。因此,我们将其用于分号字符。
总结
阅读完find命令的7个用途后,之前提到的面试问题现在看起来非常简单了。现在你能直接写出答案并清楚地解释吗?
find . -type f -atime +365 -exec rm -rf {};
感谢阅读。如果你喜欢,请关注Linux迷 www.linuxmi.com 以享受更多精彩文章。 🙂
위 내용은 Linux에서 Find 명령의 7가지 강력한 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

Linux 시스템의 5 가지 기본 구성 요소는 다음과 같습니다. 1. Kernel, 2. System Library, 3. System Utilities, 4. 그래픽 사용자 인터페이스, 5. 응용 프로그램. 커널은 하드웨어 리소스를 관리하고 시스템 라이브러리는 사전 컴파일 된 기능을 제공하며 시스템 유틸리티는 시스템 관리에 사용되며 GUI는 시각적 상호 작용을 제공하며 응용 프로그램은 이러한 구성 요소를 사용하여 기능을 구현합니다.

git 저장소 주소를 보려면 다음 단계를 수행하십시오. 1. 명령 줄을 열고 리포지토리 디렉토리로 이동하십시오. 2. "git remote -v"명령을 실행하십시오. 3. 출력 및 해당 주소에서 저장소 이름을 봅니다.

Sublime에서 코드를 실행하는 6 가지 방법이 있습니다. 핫키, 메뉴, 빌드 시스템, 명령 줄, 기본 빌드 시스템 설정 및 사용자 정의 빌드 명령, 프로젝트/파일을 마우스 오른쪽 단추로 클릭하여 개별 파일/프로젝트를 실행합니다. 빌드 시스템 가용성은 숭고한 텍스트 설치에 따라 다릅니다.

메모장은 Java 코드를 직접 실행할 수는 없지만 다른 도구를 사용하여 명령 줄 컴파일러 (Javac)를 사용하여 Bytecode 파일 (filename.class)을 생성하면 달성 할 수 있습니다. Java Interpreter (Java)를 사용하여 바이트 코드를 해석하고 코드를 실행하고 결과를 출력하십시오.

Linux의 주요 용도에는 다음이 포함됩니다. 1. 서버 운영 체제, 2. 임베디드 시스템, 3. 데스크탑 운영 체제, 4. 개발 및 테스트 환경. Linux는이 분야에서 뛰어나 안정성, 보안 및 효율적인 개발 도구를 제공합니다.

Laravel을 설치하려면 다음 단계를 순서대로 수행하십시오. Composer 설치 (MacOS/Linux 및 Windows) 설치 LARAVEL 설치 프로그램 새 프로젝트 시작 서비스 액세스 애플리케이션 (URL : http://127.0.1:8000) 데이터베이스 연결 (필요한 경우)을 설정하십시오.

GIT 소프트웨어 설치 단계는 다음 단계가 포함됩니다. 설치 패키지를 다운로드하고 설치 패키지를 실행하여 설치 구성 GIT 설치 GIT BASH (Windows 만)를 확인하십시오.

Visual Studio Code (VSCODE)는 Microsoft가 개발 한 크로스 플랫폼, 오픈 소스 및 무료 코드 편집기입니다. 광범위한 프로그래밍 언어에 대한 가볍고 확장 성 및 지원으로 유명합니다. VSCODE를 설치하려면 공식 웹 사이트를 방문하여 설치 프로그램을 다운로드하고 실행하십시오. VScode를 사용하는 경우 새 프로젝트를 만들고 코드 편집, 디버그 코드, 프로젝트 탐색, VSCODE 확장 및 설정을 관리 할 수 있습니다. VSCODE는 Windows, MacOS 및 Linux에서 사용할 수 있으며 여러 프로그래밍 언어를 지원하며 Marketplace를 통해 다양한 확장을 제공합니다. 이점은 경량, 확장 성, 광범위한 언어 지원, 풍부한 기능 및 버전이 포함됩니다.
