2文字に分けてawkを一度だけ実行できますか?

2文字に分けてawkを一度だけ実行できますか?

ip a複数のIPアドレスとインターフェイスの状態を作成する

私は次のようにawk '/inet / {print $2}'IPとサブネットを得ました。

wolf@linux:~$ ip a | awk '/inet / {print $2}'
127.0.0.1/8
10.10.0.1/24
10.10.1.1/24
wolf@linux:~$ 

その後、CIDRシンボルを削除するために別のawkにパイプしました。

wolf@linux:~$ ip a | awk '/inet / {print $2}' | awk -F / '{print $1}'
127.0.0.1
10.10.0.1
10.10.1.1
wolf@linux:~$ 

awk出力を別のawkにパイプすることなくこれを実行できますか?

希望の出力

wolf@linux:~$ ip a | <awk syntax here without additional piping>
127.0.0.1
10.10.0.1
10.10.1.1
wolf@linux:~$ 

ベストアンサー1

実際に使用するように定義したフィールド区切り文字-Fは正規表現です。したがって、次のコマンドを渡す必要があります。

ip a | awk -F'[ /]+' '/inet / {print $3}'

おすすめ記事