📖
すべての Unix システムの基本コマンドの中には、テキスト フローの操作(処理、選択、編集など) を目的としたコマンドがいくつかあります。
これらは地球上のすべての Linux、 BSD (およびそれに伴う macOS) 、および Windows 10 ~ 11 ( WSL のおかげ)で見つかるという事実のおかげで、実行すべき作業についての基本的な概念を持っていると、次のような場合に非常に役立ちます。ある時点で私たちは彼らに頼らなければなりません。たとえば、シェル スクリプトを作成します。
以下に、これらのコマンドのうち 4 つの簡単な概要を示しますが、さまざまなオプションを詳しく調べることは意図していません。
Grep: 検索エンジン
コマンドの名前は‘Global search’ + ‘ Regular Expression’ + ‘Print’に由来しており、すでにその動作に関する手がかりが得られています。
「Grep」コマンドのタスクは、特定のファイルの内容をフィルタリングして、指定した文字列および/または正規表現 (「パターン」と呼ぶもの) を検索することです。見つかったら、各結果の全行が画面に表示されますが、修飾子によって変更することもできます。
Grep は、ある意味、グラフィカル ツールの典型的な「Ctrl + F」と同等ですが、ターミナルで使用すると汎用性が高まり、たとえば、コマンドの出力を新しいツールにリダイレクトする機会が得られます。元のファイルの特定の行のみを表示するテキスト ファイル。
- 構文:
$grep [-修飾子] [パターン] [ファイル/秒]
「grep -n user *.log」の例では、用語「user」を含むすべての行 (行番号を示す) を画面上に表示し、すべての .log ファイルに対してこの操作を実行するように Grep に指示しています。ディレクトリ内。
喉の渇き: 代替品
「Sed」は「Stream Editor」の略語で、この用語の最も伝統的な意味でのワード プロセッサです。与えられた指示に基づいて、1 つまたは複数のファイルの内容を変換し、次のことを可能にします。例 — テキストを切り取るか置き換えます。
「ファイルの内容」を変更することは、必ずしもファイル自体を変更することを意味するわけではないので注意してください。プログラムに別の動作を指定しない限り、処理されたテキストは標準出力 (画面) に表示されるだけです。
- 構文:
$sed [開始行 [, 終了行]] 関数 [引数]
したがって、たとえば、「$sed ‘s/Iliad/Odyssey/g’ file.txt」という命令には開始行や終了行が含まれていませんが、「/g」修飾子は sed に file の内容全体を置き換えるよう指示します。 txt に「オデュッセイア」の「イリアス」という単語を入力します。
Cat: ビジュアライザー (およびバインダー)
私たちが知る限り、「Cat」は猫の参照ではなく、テキストを連結して表示するコマンドであるため、「concatenate」の略語です。
したがって、 1 つまたは複数のファイルのすべてのコンテンツを画面に表示できるだけでなく、その標準出力をそれらをまとめた新しいファイルにリダイレクトすることもできます。修飾子を使用すると、空行の削除などの他のタスクを実行できます。
- 構文:
$cat [修飾子] [ファイル/秒]
したがって、コマンド「cat Chapter*.txt」は、名前が「chapter」で始まるすべてのテキスト ファイルの内容を画面に連続して表示します。このタイプのコマンドを ‘more’ コマンドと組み合わせて使用し、読書中に ‘ページ’ (またはむしろバッファ) をめくるオプションを提供することをお勧めします。

Awk: オールインワン言語
awk は、これまでのものと実質的にすべてのことを実行でき、さらにいくつかのことも実行できます。実際、これは単純なパターン処理コマンドではなく、変数や「if」条件などの使用を考慮したセマンティック分析のための強力なスクリプト言語です。
- 構文:
$awk [修飾子] 命令 [ファイル]
したがって、たとえば、「awk ‘{if ($1 > 10) print $1}’ file.txt」では、問題のファイルの各行の最初の要素を表示するように Awk に指示しています。 10 より大きい数。
