"awk" funktioniert nicht, wenn es mit "watch" verwendet wird

492
M. Schmidt

Um meine IPv6-Verkehrssummen zu überwachen, möchte ich den folgenden Befehl ausführen:

netstat -s -6 | grep -i octet | grep -vi cast | awk '{ print $2/(1024*1024*1024) }' 

kombiniert mit "watch -n1", damit es jede Sekunde ausgeführt wird:

watch -n1 "netstat -s -6 | grep -i octet | grep -vi cast | awk '{ print $2/(1024*1024*1024) }'" 

Aber es scheitert mit:

awk: line 1: runaway regular expression /(1024*1024 ... 

Ich habe den One-Liner von hier mitgenommen: http://ipv6-or-no-ipv6.blogspot.de/2013/06/measure-ipv4-versus-ipv6-traffic-on.html

Irgendwelche Ideen?

1

1 Antwort auf die Frage

0
Thomas Dickey

Wenn Sie zuvor einen Backslash setzen $2, wird das Problem behoben:

watch -n1 "netstat -s -6 | grep -i octet | grep -vi cast | awk '{ print \$2/(1024*1024*1024) }'"