私はbashスクリプトに初めてアクセスし、現在のネットワークをインポートしてダウンロードするスクリプトを作成しようとしています。私は必要な情報を抽出するためにawkやsedなどのツールを見つけようとしています。
猫/proc/net/dev
Inter-| Receive | Transmit face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 2245514 26732 0 0 0 0 0 0 2245514 26732 0 0 0 0 0
0
wlan0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0
eth0: 501233000800 372656590 0 354 0 0 0 478724 19824791855 194196655 0 0 0 0 0 0
これは私の出力です。 eth0でフィールドを受信して送信する必要があります。 grep -i eth0を使用して1行だけを修正しようとしましたが、その後は停止しました。
eth0: 501233200415 372657763 0 356 0 0 0 478834 19825031691 194197387 0 0 0 0 0 0
ここまで来ました。 「501233200415」と「478834」をどのように抽出しますか?
答え1
必要なフィールドが常に2番目と9番目のフィールドである場合(例のように)、次のものを使用できます。
grep -i eth0 your_file | awk '{print $2, $9}'