複数のパターンで検索する
このステップでは、grep
の知識を拡張して、2 つのパターンのいずれかに一致する行を検索する方法を学びます。これは、あるキーワードまたは別のキーワードを含む行を見つけたい場合に便利です。
grep
で -E
オプションを使用すると、拡張正規表現を有効にすることができます。これにより、|
記号(引用符内で使用されるパイプ記号)を「OR」を意味するものとして使用できます。
git branch
の出力の中から、"master" または "main" を含む行を検索してみましょう。まだ ~/project/my-time-machine
ディレクトリにいることを確認してください。
git branch | grep -E "master|main"
現在のリポジトリには master
ブランチしかないため、出力は引き続き次のようになります。
* master
ただし、main
という名前のブランチがある場合、このコマンドは master
ブランチと main
ブランチの両方を表示します。
別のブランチを作成することで、その存在をシミュレートしてみましょう(ブランチの作成については後で詳しく学びます)。
git branch new-feature
ここで、git branch
コマンドを再度実行して、新しいブランチを確認します。
git branch
出力には両方のブランチが表示されるはずです。
* master
new-feature
では、grep -E
を使って、"master" または "new-feature" を含む行を検索してみましょう。
git branch | grep -E "master|new-feature"
これで、出力には両方の行が表示されるはずです。
* master
new-feature
これは、|
演算子を使った grep -E
が、複数のパターンに基づいて出力をフィルタリングするためにどのように使用できるかを示しています。この手法は、コマンドラインの出力からいくつかの可能性のうちの 1 つに一致する特定の情報を見つける必要がある場合に非常に強力です。