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 の中国語ソートの詳細と例

推薦する

Dockerは1行のコマンドでFTPサービス構築の実装を完了します

1行のコマンド docker run -d \ -v /share:/home/vsftpd \ -...

Alibaba Cloud ECS サーバーでポート 8080 を開く方法

セキュリティ上の理由から、Alibaba Cloud Server ECS にはデフォルトで独自のセ...

Linux で文字化けしたファイルや特殊文字のファイルを削除する方法

エンコーディングの理由により、Linux サーバーに中国語のファイルやディレクトリをアップロードまた...

VUEの基本を理解するのに役立つ記事

目次VUEとはVueのコアプラグインVueルーターヴュークスアクシオス要素UI Vue フロントエン...

CSS3 で translate と transition を使用する方法

translate と transition は非常に強力で、習得するのは不可能だといつも感じていま...

IE6 の iframe の水平スクロール バーの解決策

状況は以下のとおりです: (PS: 赤いボックスは iframe 領域を表し、灰色の四角形は上記の ...

HTML チュートリアル、HTML デフォルト スタイル

html 、アドレス、引用、本文、 dd 、 div 、 dl 、 dt 、フィールドセット、フォ...

ウェブページのアクセス速度に関する主な問題と解決策

<br />ウェブサイトのアクセス速度はウェブサイトのトラフィックに直接影響を及ぼし、ウ...

node.js で Web サーバーを作成する手順の詳細な説明

序文node.js でサーバーを作成するのは非常に簡単です。小さいながらも完全な Web サーバーを...

React コンポーネント通信ルーティングパラメータ転送 (react-router-dom)

目次最近Reactを勉強していて、今は仕事でVueを使っています。学習の過程で、両者を比較して理解を...

ノードの対応するバージョンに関する簡単な説明 node-sass sass-loader

目次ノードのバージョンが一致しない、ノードをアップグレードまたはダウングレードするnvm を使用して...

星のフラッシュ効果を実現するjs

この記事の例では、スターフラッシュ効果を実現するためのjsの具体的なコードを参考までに共有しています...

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

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

DockerでRedashの中国語版をデプロイしてインストールする方法の詳細な説明

1. インストール手順 Linux 環境でのローカル インストールと比較すると、Docker のイン...

JavaScript スロットリングとアンチシェイクに関する簡単な説明

目次スロットルと手ぶれ防止コンセプト:違いスロットリングの実装スロットル機能手ぶれ補正の実装手ぶれ防...