公正に交換されたこのTシャツは、なぜ最初のラインと選択されたラインを生産できないのですか? [コピー]

公正に交換されたこのTシャツは、なぜ最初のラインと選択されたラインを生産できないのですか? [コピー]

私が望むのは、出力(ヘッダー)の最初の行とps auxgrepの結果を印刷することです。

検索した結果、次の結論が得られました。

ps aux | tee >(head -1 > /dev/tty) | grep mongo

grep mongoしかし、stdinが壊れていることがわかりました。

また、省略すると> /dev/tty直接標準出力はどうなりますかhead -1?コンソールはなぜできないのですか?

(はい、私はコマンドを使って欲しいものを得ることができることを知っています。awkなぜ私のコマンドがうまくいかないのかと思います。)

ベストアンサー1

これを使用して、awk2つを同時に一致させることができます。

  • 最初の行。
  • 「mongo」を含む行です。

それだけです:

$ ps aux | awk 'NR == 1 || /mongo/ {print $0}'
  • 条件がNR == 1最初の行と一致します。
  • 条件は/mongo/「mongo」を含む行と一致します。
  • {print $0}は最初の2つの条件に関連する操作です。この場合、ライン全体を印刷します。

おすすめ記事