为了查看我的 IPv6 流量总数,我需要运行以下命令:
netstat -s -6 | grep -i octet | grep -vi cast | awk '{ print $2/(1024*1024*1024) }'
与“watch -n1”结合,因此它每秒运行一次:
watch -n1 "netstat -s -6 | grep -i octet | grep -vi cast | awk '{ print $2/(1024*1024*1024) }'"
但它失败了:
awk: line 1: runaway regular expression /(1024*1024 ...
我从这里摘取了一句话:http://ipv6-or-no-ipv6.blogspot.de/2013/06/measure-ipv4-versus-ipv6-traffic-on.html
有任何想法吗?
答案1
如果在 之前加上反斜杠$2
,就可以解决这个问题:
watch -n1 "netstat -s -6 | grep -i octet | grep -vi cast | awk '{ print \$2/(1024*1024*1024) }'"
答案2
如果你将命令放在双引号中"
,则需要转义"
并$
watch -n1 "netstat -s -6 | grep -i octet | grep -vi cast | awk '{ print \$2/(1024*1024*1024) }'"
如果将命令放在单引号中'
,则不必转义"
或$
,但是如果命令中有单引号,则必须结束单引号并添加转义的单引号\'
watch -n1 'netstat -s -6 | grep -i octet | grep -vi cast | awk '\''{ print $2/(1024*1024*1024) }'\'