为什么我不能在 OSX 上使用 cut 两次,而在 Linux 上却可以?
例如
sobakapavlova@bark:final_paper$ping -s 252 -z 0xb8 -c 1000 google.com |cut -d "=" -f4
PING google.com (74.125.232.230): 252 data bytes
50.826 ms
34.031 ms
30.043 ms
39.310 ms
但
sobakapavlova@bark:final_paper$ping -s 252 -z 0xb8 -c 1000 google.com |cut -d "=" -f4 | cut -d " " -f1
不返回我任何东西。
答案1
这是一个缓冲问题(并非 macOS 特有)。等待足够长的时间(直到缓冲区刷新或ping
在 1000 次迭代时自行完成),您将获得输出。
或者,awk
像这样使用:
$ ping ... | awk -F '[ =]' '{ print $10 }'