Linux での Find コマンドの 7 つの強力な使用法
わかりました。この段落の詳細な疑似オリジナル バージョンを作成してみます。これは私が修正したバージョンです:
Linux では、Windows Server を使用している場合を除き、バックエンド開発者が find コマンドを習得する必要がある操作の 1 つです。
これは技術面接でもよくある話題です。ここに本当の質問があります:
Linux サーバー上に logs というディレクトリがある場合、その中にある最後にアクセスされたのが 1 年以上前のログ ファイルを削除するにはどうすればよいでしょうか? 🤔
# この状況は非常に一般的ですが、驚くべきことに、すべての開発者がインタビューでこのコマンドを明確に記述できるわけではありません。回答: まず、cd コマンドを使用して、対応するディレクトリに入る必要があります。その場合、コマンドは次のようになります:
リーリー

1. ファイル名または正規表現に基づいてファイルを検索します
最も簡単な使用法から始めましょう。特定の名前でファイルを検索するには、次のコマンドを使用します:リーリー

リーリー

リーリー
デフォルトでは、find コマンドは通常のファイルを検索しますが、すべてを明確にするためにタイプを指定することをお勧めします。リーリー
2. さまざまな種類のファイルを見つける
通常のファイルの検索に加えて、-type オプションを指定することで他の種類のファイルも検索できます。例:
リーリー
またはシンボリックリンク:リーリー
3. 特定のタイムスタンプでファイルを検索
特定のタイムスタンプでファイルを検索するには、Linux システムの 3 つの異なるタイムスタンプを理解する必要があります。
アクセス タイムスタンプ (atime): ファイルが最後に読み取られた時刻。変更タイムスタンプ (mtime): ファイルの内容が最後に変更された時刻。変更タイムスタンプ (ctime): ファイルのメタデータ (所有権、場所、ファイル タイプ、アクセス許可設定など、ファイルが最後に変更された日時など)。
したがって、冒頭で述べたインタビューの質問と同様に、1 年以上前のファイルを検索するには、次のコマンドを作成できます。リーリー

リーリー

リーリー

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 中国語 Web サイトの他の関連記事を参照してください。

楽なフラットパック管理のためのGUI:倉庫の紹介 フラットパックアプリケーションの成長コレクションを管理することは、コマンドラインのみを使用して面倒です。 フラットパックを合理化するように設計されたユーザーフレンドリーなグラフィカルインターフェイスであるウェアハウスを入力してください

この記事では、Linuxシステムでハードドライブボトルネックを特定して解決するための包括的なガイドを提供します。 経験豊富なサーバー管理者は、これが特に便利だと感じるでしょう。遅いディスク操作は、アプリケーションのパフォーマンスに深刻な影響を与える可能性があります。

Linuxシステムの下での効率的なQRコード生成ツール 今日のデジタルの世界では、QRコードは情報を迅速かつ便利に共有し、URL、テキスト、連絡先、Wi-Fi資格情報、さらには支払い情報からのデータアクセスを簡素化する方法になりました。 Linuxユーザーは、さまざまなツールを使用して、QRコードを効率的に作成できます。 Linuxシステムで直接使用できる人気のあるQRコードジェネレーターを見てみましょう。 QRENCODE QRENCODEは、LinuxでQRコードを生成するための軽量コマンドラインツールです。それはそのシンプルさと効率性に好評であり、直接的な方法を好むLinuxユーザーに人気があります。 QRENCODEを使用して、URLを使用できます。

小学校OS 8 Circe:滑らかでスタイリッシュなLinux体験 UbuntuベースのLinux分布であるElementary OSは、シンプルなテーマパックから本格的な独立したオペレーティングシステムに進化しました。 ユーザーフレンドリーなインターフェイスであるエレガントなdeで知られています

Mastering Linuxは、あらゆる機械学習(ML)エンジニアにとって重要です。 そのコマンドラインインターフェイスは、比類のない柔軟性と制御、ワークフローの合理化、生産性の向上を提供します。この記事では、Essential Linuxコマンドの概要を説明しています

Arch Linux:初心者のコマンドラインチートシート Arch Linuxは比類のないコントロールを提供しますが、新人には気が遠くなると感じることがあります。このチートシートは、システムを自信を持って管理するための重要なコマンドを提供します。 システム情報と更新 これらのcom

このガイドは、Linux SystemsにScikit-Learn Machine Learning Libraryをインストールして使用する包括的なウォークスルーを提供します。 Scikit-Learn(Sklearn)は、さまざまなマシンL用の幅広いツールを提供する強力でオープンソースのPythonライブラリであり、

このガイドは、Kali LinuxツールにアクセスするためにDockerを活用する方法を説明します。これは、Katoolinのような時代遅れの方法に代わるより安全で効率的な代替品です。 Katoolinはもはや積極的に維持されておらず、最新のシステムで互換性の問題を引き起こす可能性があります。する


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

Dreamweaver Mac版
ビジュアル Web 開発ツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール
