1. ホーム
  2. linux

[解決済み] 最初の行の最初のフィールドを表示するためのカットまたは awk コマンド

2023-03-22 09:14:32

質問

ある出力の最初の行の最初のフィールドを印刷しようとしています。以下はその場合です。私はちょうどだけを印刷する必要があります SUSE をこの出力から印刷する必要があります。

# cat /etc/*release

SUSE Linux Enterprise Server 11 (x86_64)
VERSION = 11
PATCHLEVEL = 2

で試してみました。 cat /etc/*release | awk {'print $1}' としてみましたが、これは各行の最初の文字列を表示します。

SUSE
VERSION
PATCHLEVEL

どのように解決するのですか?

指定する NR を指定することで、選択された行からの出力を取り込むことができます。

awk 'NR==1{print $1}' /etc/*release

代替案( 醜い ) の方法は、同じことを達成するために

awk '{print $1; exit}'

効率的な方法として 最初の文字列 を特定の行、例えば42行目から取得する効率的な方法は、次のようになります。

awk 'NR==42{print $1; exit}'