LinuxFINDコマンドと例

Linuxの新規インストールに含まれるファイルの数を知っていますか?PopOSを使用する場合!例としてLinuxディストリビューションには、31,000を超えるファイルがあります。(Linux distribution)それは、ドキュメントの作成、音楽の保存、PDF(PDFs)のダウンロード、または写真の整理を開始する前です。

このため、必要なときにLinuxで適切なファイルまたはフォルダーを見つけるのは困難です。この記事では、Linux FINDコマンドの使用方法を学習し、可能なすべての例を示します。

LinuxFINDコマンド構文(Linux FIND Command Syntax)

構文とは、単語またはコマンドを組み合わせる方法を指します。通常の文が単語をシャッフルするだけで意味をなさなくなるのと同じように、コマンドが適切な構文で使用されていないと、コマンドが失敗する可能性があります(Just)

[パス][条件][アクション]を見つける(find [path] [conditions] [actions])

これが意味することです:

find –Linuxで(find )Findユーティリティを開始します(Linux)

パス(path )–どこを見ればよいか

条件(conditions )–検索に適用する引数

アクション(actions )–結果で何をしたいのか

3つすべてを使用した簡単な例は次のようになります。

探す 。-name file-sample.rtf -print(find . -name file-sample.rtf -print)

ご想像のとおり、これによりファイル名file-sample.rtfが見つかります。 

ピリオド()パスは、現在のディレクトリとその中のディレクトリを検索するようにfindに指示します。 

-name条件は、その特定の名前のファイルを取得するようにfindに指示します。

-printアクションは、FINDに結果を画面に表示するように指示します。

ピリオドと-printは、findコマンドのデフォルトです。したがって、それらを使用しない場合でも同じことを行います。したがって、find-namefile-sample.rtfでも同じ結果が得られます。

Linuxが別のディレクトリで検索(Linux FIND In Another Directory)

現在のディレクトリとは別のディレクトリで検索できます。FINDの後にディレクトリへのパスを挿入するだけ(Just)です。home/userディレクトリのどこかにあることがわかっている場合は、次を使用します。

find home/user -name file-sample.rtf

それはまだ再帰的な検索なので、userの下のすべてのディレクトリを調べます。

LinuxFIND検索複数のディレクトリ(Linux FIND Search Multiple Directories)

一度に複数のディレクトリを検索したい場合は、コマンドにスペースで区切ってリストしてください。

find /lib /var /bin -name file-sample.rtf

再帰なしまたは再帰制限のないLinuxFIND(Linux FIND with No Recursion or Limiting Recursion)

上記のFIND(FIND)コマンドをルートレベルで使用した場合、システム上のすべてのディレクトリを調べます。したがって、現在のディレクトリだけに固執する場合は、-maxdepthオプションを使用します。-maxdepthの後の数字は、停止する前にどのくらい深く進むかを示します。 

-maxdepth 1を使用するということは、このディレクトリだけを意味します。 

find -name file-sample.rtf -maxdepth 1

-maxdepth 2以上の数値を使用すると、その数のレベルをさらに深くすることができます。

find -maxdepth 5 -name file-sample.rtf

LinuxFINDワイルドカードの例(Linux FIND Wildcard Example)

FINDコマンドは、ワイルドカードとしてアスタリスク(* )を*名前がわからない部分に使用してください。名前に複数回使用できます。ファイル名の一部としてファイルタイプがない場合、結果には一致するディレクトリも含まれます。

find home/user -name file*sample*

タイプ別のLinuxFINDの例(Linux FIND by Type Example)

ファイルまたはディレクトリのみを検索するには、-typeオプションと適切な記述子を使用します。いくつかありますが、ファイルとディレクトリのものが最も一般的です。

f –ファイル

d –ディレクトリ

b –ブロックデバイス

c –キャラクターデバイス

l –シンボリックリンク

s –ソケット

find home/user -name file*sample* -type d

LinuxFIND大文字と小文字を区別しない例(Linux FIND Case Insensitive Example)

Windowsとは異なり、Linuxは文字が大文字か小文字かを考慮します。したがって、File-Sample.rtfとfile-sample.rtfの両方を検索する場合は、-inameオプションを使用します。

find home/user -iname File-Sample.rtf

LinuxFINDいくつかのファイルの例(Linux FIND Several Files Example)

ファイルの.rtfバージョンと.htmlバージョンを検索したいとします。これは、 -o(-o)(または)演算子を使用して1つのコマンドで実行できます。一部のディストリビューションでは、 (-name file-sample.rtf -o -name file-sample.html)の(( -name file-sample.rtf -o -name file-sample.html ))ように、名前を角かっこで囲む必要がある場合があります。 

find home/user -name file-sample.rtf -o -name file-sample.html

名前と一致しないLinuxFINDファイル(Linux FIND Files That Don’t Match a Name)

おそらく、ファイルの.htmlバージョンがあることは知っていますが、他のバージョンがある場合はわかりません。-notオプションを使用して、検索から.htmlバージョンを除外できます

find home/user -name file-sample* -not -name *.html

エラー結果のないLinuxFIND(Linux FIND Without Error Results)

再帰のない検索の例では、検索できなかったすべてのディレクトリと正しい結果がリストされていることに注意してください。うざい。それらすべての「許可(Permission)が拒否されました」ディレクトリが表示されないようにしましょう。別のLinuxターミナルコマンド(Linux terminal command)grepと組み合わせてください。Find with grepを使用して、特定の単語を含むファイルを(find files with specific words in them)検索することもできます。

find -maxdepth 5 -name file-sample.rtf 2>&1 | grep -v “Permission denied”

2>&1を分解してみましょう。

2 –標準エラー出力の略である stderrを表します。(stderr )

1 –標準出力の略であるstdoutを表します(stdout)

> –左側にある出力を、右側にある出力にリダイレクトすることを意味します。

–まとめることを意味します。

つまり、2>&1 は、標準エラーを取得してリダイレクトし、標準出力と一緒に1つの出力にまとめることを意味します。

では、| grep -v “Permission denied”

| (パイプと呼ばれます)– Linuxに、左側にあるものすべての結果を右側にあるものにフィードするように指示します。grepコマンドに送られています。

grep –テキスト検索ユーティリティです。 

-v –-v(-v )の左側のテキストと一致しないものを検索するようにgrepに指示します。この場合、「パーミッション(Permission)が拒否されました」というテキストまたは文字列を含まないもののみを検索するようにgrepに指示しています。したがって、grepは、探している結果と、「アクセス(Permission)が拒否されました」と一致しないエラーのみを表示します。

Linux FINDbyPermissionsの例(Linux FIND by Permissions Example)

これをうまく使用するには、Linuxの権限を学ぶ(learn Linux permissions)必要があります。 

サンプルファイルには、権限775を持つものを除いて、すべての権限664があります。 -permオプションを使用して検索します。

find Documents/ -name file-sample* -type f -perm 775

Linux FIND by Size Example

サイズでファイルを検索すると、それらの巨大なファイルがハードドライブをいっぱいにするのに便利です。-sizeオプション、必要なサイズ、および次のサフィックスのいずれかを使用します。サフィックスが使用されていない場合、-sizeのデフォルトはbです。特定のサイズ以上のファイルを検索するには、サイズの前にプラス記号(+)を付けます。

M –メガバイト

G –ギガバイト

k –キロバイト

b –ブロック(512バイト–デフォルト)

c –バイト

w –ワード(一緒に2バイト)

find -size +500k

所有者によるLinuxFIND(Linux FIND by Owner)

所有者がファイルを検索する方法は2つあります。1つは所有者のユーザー名によるもので、もう1つはユーザーのグループによるものです。ユーザー名で検索するには、-userオプションを使用してから、ユーザー名を使用します。ユーザーグループで検索するには、-groupに続けてグループ名を使用します。

find-usergroupnameまたはfind-userusername

最終変更例によるLinuxFINDファイル(Linux FIND Files by Last Modified Example)

過去X日間に変更または編集されたファイルを検索するには、-mtimeの後に数字を使用します。数字の前にマイナス記号()を付けると、今までの数日以内に変更されたものが見つかります。プラス記号(+)は、今からその数日以内を意味します。 

find -name “file-sample*” -mtime +5 (greater than 5 days ago)

find -name “file-sample*” -mtime -5 (less than 5 days ago)

最終変更日(分単位)で検索するには、オプション-mminの後に分数を使用します。上記のように+と–を使用します。

find -name “file-sample*” -mmin -5

find -name “file-sample*” -mmin +5

最後にアクセスした時間の例によるLinuxFINDファイル(Linux FIND Files by Last Accessed TIme Example)

最後に開かれた日時に基づいてファイルを検索するために使用されるオプションは、 -atimeは日、-aminは分です。その後、日数または分数を入力して戻り、+および–記号を「より大きい」および「より小さい」として使用します。

find -name “file-sample*” -atime -5

find -name “file-sample* -amin -5

FINDを他のLinuxコマンドと組み合わせる(Combine FIND with Other Linux Commands)

上記のgrepコマンドでfindを使用する例が1つあり、他の多くのコマンドで使用できます。findやその他のコマンドを使用すると、非常に強力で時間の節約になります。特定の種類のファイルの束を削除する必要があると想像してください。(Imagine)ファイルエクスプローラーで検索する代わりに、適切なコマンドを作成するだけで、数秒で完了します。今すぐfindコマンドをどのように使用しますか?



About the author

私は 10 年以上の経験と Android デバイスでの作業経験を持つコンピューター技術者です。また、過去 5 年間オフィスで働いており、Office 365 と MacOS の使い方を学びました。余暇には、屋外で音楽を演奏したり、映画を見たりするのを楽しんでいます。



Related posts