2017-12-24 51 views
0

これまではgrepを使っていましたが、ここでは使えないと思います。実際には、各行の最初のセクションに一致するを入れて、行全体を印刷します。 Bashでは、最初のセクションに特定の文字列を含む.txtファイルの行全体を印刷する方法は?

は、私はそのようなことを書いた:

cat file.txt | cut -d " " -f1 | grep root

しかし、もちろん、このコマンドは、行全体が、「root」を含む各ラインの前半部分のみの印刷されません。私はawkコマンドについて聞いたことがありますが、マニュアルでも私の目標に到達する方法は分かりません。

は、あなたの答えのために事前に

答えて

2

シンプルawkそれを行う必要がありますありがとう:

awk '$1 ~ /root/' file.txt 
+0

オクラホマので、 '$ 1 'は、行の最初の部分を指しますが、何がの目的であります'〜'? – Ludovic

+0

最初のフィールド '$ 1'を与えられた正規表現'/root/'と比較します。マニュアルから: '〜'と '!〜'は正規表現の比較を行います.' - [manual](https://www.gnu.org/software/gawk/manual/gawk.html#Regexp-Usage)を参照してください。詳細については。 – PesaThe

+0

さて、あなたの素早い答えのためにたくさんありがとう、私はあまりにも多くの時間をそれを把握しようと過ごした:) – Ludovic

関連する問題