1

一連の ipv6 IP アドレスをクリーンアップしようとしています。

cat /tmp/ipaddress.txt | /bin/grep -i "unexpectedly shrunk window" | /bin/cut -d' ' -f3 | /bin/cut -d'/' -f1 | /bin/cut -d' ' -f3 | /bin/sort --uniq > /var/log/dos_ip6.txt

/tmp/ipaddress.txt には以下が含まれます

TCP: Peer 0000:0000:0000:0000:0000:ffff:4df6:3e12:12345/80 unexpectedly shrunk window 1550831482:1550831483 (repaired)

/var/log/dos_ip6.txt には以下が含まれます

0000:0000:0000:0000:0000:ffff:4df6:3e12:12345

最後の「*:12345」を切り取りたいと思います。

これどうやってするの

4

2 に答える 2

1

2 つ以上のcutコマンドを使用することを考えている場合は、次の使用を検討してawkください。

awk 'BEGIN { IGNORECASE=1 } { print gensub(/(.*):.*/, "\\1", "g", $3) | "sort -u" }' /tmp/ipaddress.txt

結果:

0000:0000:0000:0000:0000:ffff:4df6:3e12

それ以外の場合は、単純なパイプsedで十分です。

... | sed 's/\(.*\):.*/\1/'
于 2012-11-20T13:24:57.000 に答える