Linux コマンドラインのクイックヒント: ファイルの検索方法

Linux コマンドラインのクイックヒント: ファイルの検索方法

私たちのコンピューターには、ディレクトリ、写真、ソース コードなどのファイルが保存されています。たくさんありますよ。それは間違いなく私の記憶を超えています。目標を念頭に置いていないと、適切な目標を見つけるのに時間がかかります。この記事では、コマンド ラインで必要なファイルを見つける方法、特に必要なファイルをすばやく見つける方法について説明します。

幸いなことに、Linux コマンドラインには、コンピューター上のファイルを検索するために特別に設計された非常に便利なコマンドライン ツールが多数あります。 ls、tree、find の 3 つを見てみましょう。

ls

ファイルの場所がわかっていて、ファイルを一覧表示したりファイルに関する情報を表示したりしたい場合は、ls が最適です。

現在のディレクトリにあるすべての表示可能なファイルとディレクトリを一覧表示するには、 ls を実行するだけです。

$ ls
ドキュメント 音楽 写真 ビデオ notes.txt

ファイルに関する情報を表示するには、-l オプションを追加します。また、人間が読める形式でファイル サイズを表示するには、-h オプションを追加します。

$ ls -lh
合計60K
drwxr-xr-x 2 adam adam 4.0K 11月2日 13:07 ドキュメント
drwxr-xr-x 2 adam adam 4.0K 11月2日 13:07 音楽
drwxr-xr-x 2 adam adam 4.0K 11月2日 13:13 写真
drwxr-xr-x 2 adam adam 4.0K 11月2日 13:07 動画
-rw-r--r-- 1 adam adam 43K 11月2日 13:12 notes.txt

ls は特定の場所を検索することもできます。

$ ls 写真/
木.png 壁紙.png

または特定のファイル - 名前の一部のみが続く場合でも、次のようになります。

$ ls *.txt
ノート.txt

何が足りないのでしょうか?隠しファイルを表示しますか?問題ありません。-a オプションを使用してください。

$ ls -a
. .bash_logout .bashrc ドキュメント 画像 notes.txt
.. .bash_profile .vimrc ミュージックビデオ

ls には、組み合わせることで必要な効果を得ることができる、他にも多くの便利なオプションがあります。詳細については、次のコマンドを使用できます。

$ 男 ls

ファイルのツリー構造を表示する場合は、tree が適切な選択です。デフォルトではシステムにインストールされていない可能性があります。パッケージ マネージャー DNF を使用して手動でインストールできます。

$ sudo dnf ツリーをインストール

オプションや引数なしで tree を実行すると、現在のディレクトリから開始され、その下にあるすべてのディレクトリとファイルのツリーが表示されます。注意してください。この出力には、このディレクトリの下にあるすべてのディレクトリとファイルが含まれるため、かなり大きくなる可能性があります。

$ツリー
。
|-- ドキュメント
| |-- ノート.txt
| |-- 秘密
| | `-- クリスマスプレゼント.txt
| `-- 仕事
| |-- プロジェクト-abc
| | |-- README.md
| | |-- do-things.sh
| | `-- プロジェクトノート.txt
| `-- ステータスレポート.txt
|-- 音楽
|-- 写真
| |-- 木.png
| `-- 壁紙.png
|-- ビデオ
`-- ノート.txt

リストするには多すぎる場合は、-L オプションに続けて表示するレベル数を指定することで、リストされるファイルのレベル数を制限できます。

$ツリー-L 2
。
|-- ドキュメント
| |-- ノート.txt
| |-- 秘密
| `-- 仕事
|-- 音楽
|-- 写真
| |-- 木.png
| `-- 壁紙.png
|-- ビデオ
`-- ノート.txt

特定のディレクトリのツリー ビューを表示することもできます。

$ ツリー ドキュメント/作業/
文書/仕事/
|-- プロジェクト abc
| |-- README.md
| |-- do-things.sh
| `-- プロジェクトノート.txt
`-- ステータスレポート.txt

tree を使用して大きなツリーを一覧表示する場合は、それを less と組み合わせることができます。

$ tree | less

繰り返しになりますが、tree には他にも使用できるオプションが多数あり、それらを組み合わせることでさらに強力な効果を生み出すことができます。 man ページにはこれらのオプションがすべて記載されています。

$ man tree

探す

ファイルの所在が分からない場合はどうすればいいでしょうか?見つけてみましょう!

システムで find が利用できない場合は、DNF を使用してインストールできます。

$ sudo dnf findutilsをインストール

オプションやパラメータなしで find を実行すると、現在のディレクトリ内のすべてのファイルとディレクトリが再帰的に一覧表示されます。

$ 検索
。
./ドキュメント
./ドキュメント/秘密
./Documents/secret/クリスマスプレゼント.txt
./ドキュメント/notes.txt
./ドキュメント/作業
./Documents/work/ステータスレポート.txt
./ドキュメント/作業/プロジェクト-abc
./Documents/work/project-abc/README.md
./Documents/work/project-abc/do-things.sh
./Documents/work/project-abc/project-notes.txt
./.bash_logout
./.bashrc
./ビデオ
./.bash_プロファイル
./.vimrc
./写真
./Pictures/木々.png
./画像/壁紙.png
./notes.txt
。/音楽

しかし、find の本当の力は、ファイル名を使用して検索できることです。

$ 検索 -name do-things.sh
./Documents/work/project-abc/do-things.sh

または、ファイル拡張子のように名前の一部だけでもよいです。すべての .txt ファイルを見つけましょう:

$ 検索 -name "*.txt"
./Documents/secret/クリスマスプレゼント.txt
./ドキュメント/notes.txt
./Documents/work/ステータスレポート.txt
./Documents/work/project-abc/project-notes.txt
./notes.txt

サイズ別にファイルを検索することもできます。この方法は、スペースが不足している場合に特に便利です。次に、1 MB より大きいすべてのファイルを一覧表示します。

$ 検索 -サイズ +1M
./Pictures/木々.png
./画像/壁紙.png

もちろん、特定のディレクトリを検索することもできます。たとえば、ドキュメント フォルダー内のファイルを検索したいのですが、そのファイルの名前に「project」という単語が含まれていることが分かっているとします。

$ ドキュメントを検索 -name "*プロジェクト*"
ドキュメント/作業/プロジェクト-abc
ドキュメント/作業/プロジェクト-abc/プロジェクト-ノート.txt

ファイルのほかにディレクトリも表示されます。検索をクエリ ファイルのみに制限できます。

$ ドキュメントを検索 -name "*プロジェクト*" -type f
ドキュメント/作業/プロジェクト-abc/プロジェクト-ノート.txt

もう一度言いますが、find には他にも多くのオプションがあり、それらを使用したい場合は、man ページが間違いなく役立ちます。

$ 男が見つける
出典: https://fedoramagazine.org/commandline-quick-tips-locate-file/

要約する

上記は、私が皆さんに紹介した Linux コマンドラインのクイックトリックで、ファイルの検索方法です。皆さんのお役に立てれば幸いです。ご質問があれば、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Python 経由で Linux コマンドラインコード例に接続する
  • Linux コマンドラインでメールを送信する 5 つの方法 (推奨)
  • Linux コマンドラインでパケットをキャプチャするために tcpdump を使用するいくつかの機能
  • Linux コマンドラインターミナルで画面を分割するための 2 つのツール
  • Linux のコマンドラインから Android アプリケーションをパッケージ化する方法
  • Linux で IP、DNS、ルーティングのコマンドライン設定を変更する方法
  • Linux コマンドラインで他のユーザーと通信する方法

<<:  Vue router-viewとrouter-linkの実装原理

>>:  MySQL の中国語ソートの詳細と例

推薦する

ネイティブ js はカスタム スクロール バー コンポーネントを実装します

この記事の例では、カスタムスクロールバーコンポーネントを実装するためのjsの具体的なコードを参考まで...

シェルで文字列内のスペースや指定された文字を削除する方法

インターネット上には、正しい方法であっても、使用しても正しい結果が得られない方法が数多くあります。正...

innodb_flush_method 値メソッド (例の説明)

innodb_flush_methodのいくつかの典型的な値 fsync: InnoDB は fs...

MySQL で日付を保存するためのベスト プラクティス ガイド

目次序文時間型を保存するのに文字列を使用しないでくださいMySQL の日付型日時タイムスタンプTIM...

Vue Element-ui テーブルはツリー構造テーブルを実現します

この記事では、ツリー構造テーブルを実現するためのElement-uiテーブルの具体的なコードを参考ま...

MySQL のデッドロックとデータベースおよびテーブル シャーディングの問題の詳細な説明

MySQL 運用上の問題点を記録します。ビジネスシナリオと問題の説明外部インターフェースをリクエスト...

Webデザインチュートリアル(3):デザインの手順と考え方

<br />前のチュートリアル:Webデザインチュートリアル(2):模倣と盗作について。...

html5 の新しいメソッドを使用して JavaScript で要素クラス名を操作する方法の詳細な説明

目次1. classList属性2. 実用化以前の JavaScript では、最初にクラス属性を取...

Maven プロジェクトのリモート デプロイメント && Tomcat を使用してデータベース接続を構成する方法

1つ。 tomcat を使用したリモート展開1.1 発生した問題:プロジェクトでは、サードパーティの...

Vue3 はメッセージコンポーネントの例を実装します

目次コンポーネント設計最終的なコンポーネントAPIの定義コンポーネント構造の定義テンプレートとスタイ...

Vue.js でフォントを読み込む正しい方法

目次font-faceでフォントを正しく宣言するフォントをプリロードするフォントをホストするにはli...

HTML 形式の JSON 出力の例 (テスト インターフェース)

JSON データを美しいインデント形式で表示するには、最も単純な JSON.stringify 関...

DockerがElasticsearch7.xを起動してエラーを報告する問題を解決する

Docker実行コマンドの使用docker run -d -p 9200:9200 -p 9300:...

Vue3 リストインターフェースデータ表示の詳細

目次1. リストインターフェースの表示例2. データを表示する2.1. コンポーネントがリストに表示...

Vue のグローバル ウォーターマーク実装例

目次1. 透かしのJsファイルを作成する2. 導入操作2.1 App.vueや他のページでの参照2....