次の記事では、いくつかを見るでしょう テキストファイル内で一致する文字列またはパターンを見つけるために使用されるコマンドラインツール。 これらのツールは通常、正規表現と組み合わせて使用され、次のように省略されます。 正規表現、検索パターンを説明するための一意の文字列です。
正規表現は、テキスト文字列内の文字の特定の組み合わせを見つけるために使用されるパターンです。 正規表現は、テキスト文字列を検索または認識するための非常に柔軟な方法を提供します。 次の行では正規表現は表示されませんが、パターンまたは文字列を使用します。
端末から文字列またはパターンを検索する
Grepコマンド
Grepはの頭字語です グローバル正規表現印刷。 これは、ファイル内の特定の文字列またはパターンを検索するときに役立つ強力なコマンドラインツールです。 grepを使用 先ほどこのブログで同僚から説明された機能など、幅広い機能が使えるようになります。
grepコマンドを使用するための構文は非常に単純です。
grep PATRON [RUTA AL ARCHIVO]
たとえば、文字列 'を検索するにはUbuntu'この例では呼び出すファイル内 text.txt、大文字と小文字の区別を考慮せずに、ターミナル(Ctrl + Alt + T)では、次のコマンドを実行するだけで済みます。
grep -i Ubuntu texto.txt
コマンドsed
喉の渇きは ストリームエディタ。 これは、ファイル内のテキストを操作できる端末のもうXNUMXつの便利なツールです。 Sedは、特定のファイル内の文字列を検索、フィルタリング、および置換します.
sedコマンドはデフォルトで出力を出力します 標準出力 (標準出力)。 これは、実行の結果がファイルに保存されるのではなく、端末に出力されることを意味します。
Sedコマンドは次のように使用できます。
sed -OPCIONES COMANDO [RUTA AL ARCHIVO]
たとえば、 'のすべての出現を置き換えるにはLinux'によるテキストで'Linux'、使用するコマンドは次のようになります。
sed 's/Linux/GnuLinux/g' texto.txt
私たちが探しているのが 出力を端末に出力するのではなく、ファイルにリダイレクトします、次のようにリダイレクト記号を使用します。
sed 's/Linux/GnuLinux/g' texto.txt > salida.txt
コマンドの出力はファイルに保存されます output.txt 画面に印刷される代わりに。
その他のオプションを表示するには、次のことができます マニュアルページを参照してください:
man sed
Ack
Ackは、Perlで記述された高速のコマンドラインツールです。 これは、grepユーティリティのフレンドリーな代替品と見なされます、これも視覚的に魅力的な方法で結果を生成します。
へ ackをインストールします 私たちのシステムでは、ターミナルで実行する必要があります(Ctrl + Alt + T):
sudo apt install ack
コマンド Ackは、ファイルまたはディレクトリで、検索条件に一致する行を検索します。。 次に、対応する文字列を強調表示します。 このツールには、拡張子に基づいてファイルを区別する機能があります。
Ackコマンドの構文は次のようになります
ack [OPCIONES] PATRÓN [RUTA AL ARCHIVO]
たとえば、用語を検索するには Linux ファイルでは、以下を実行する必要があります。
ack Linux texto.txt
検索ツールはかなりスマートで、 ユーザーがファイルまたはディレクトリを指定しない場合は、現在のディレクトリとサブディレクトリで検索パターンを検索します.
次の例では、ファイルまたはディレクトリは提供されていません。 Ackは、ディレクトリ内の使用可能なファイルを自動的に検出し、一致するパターンを探します。
ack Linux
リップグレップ
リップグレップ は、正規表現パターンを検索するためのクロスプラットフォームユーティリティです。。 上記のすべての検索ツールよりも高速で、一致するパターンを探すためにディレクトリを再帰的に検索します。 また、特定のファイルタイプを検索することもできます。 デフォルトでは、ripgrepはバイナリと隠しファイル/ディレクトリをスキップします。
へ ripgrepをインストールします システムでは、ターミナルで次のコマンドを実行するだけです(Ctrl + Alt + T)。
sudo apt install ripgrep
ripgrepを使用するための構文は非常に単純です。
rg [OPCIONES] PATRÓN [RUTA AL ARCHIVO]
チェーンを検索したい場合 'Linux'現在のディレクトリ内にあるファイルでは、次のコマンドを実行するだけで済みます。
rg Linux
その他のオプションを表示するには、ユーザーは次を使用できます マニュアルページ:
man rg
シルバーサーチャー
へ このツールをインストールしますUbuntuでは、ターミナルを開いて(Ctrl + Alt + T)、次のコマンドを書くだけです。
sudo apt install silversearcher-ag
Silver Searcherは、ackに似ていますが、速度に重点を置いたクロスプラットフォームのオープンソース検索ツールです。。 これにより、ファイル内の特定の文字列を最短時間で簡単に見つけることができます。 使用する構文は次のとおりです。
ag OPCIONES PATRÓN_DE_BÚSQUEDA /ruta/al/archivo
たとえば、 'を検索するにはLinux'ファイル内 text.txt、ターミナルに書き込む必要があります(Ctrl + Alt + T):
ag Linux texto.txt
その他のオプションについては、 マニュアルページ:
man ag
これらは、Linuxでテキストを検索、フィルタリング、および操作するために最も一般的に使用されるコマンドラインツールのほんの一部です。