我正在用两个 Raspberry Pi 做一个小项目。我想使用精确时间协议同步他们的时钟(一个作为主时钟,另一个作为从时钟)。
现在我有兴趣记录您在使用该命令时看到的数据-V
。我正在做以下 atm:
对于树莓派 1:
sudo ptpd --interface wlan0 -M -L
对于树莓派 2:
sudo ptpd --interface wlan0 -s -L -V > onewaydelay.csv
输出是典型的
#Timestamp, State, Clock ID, One Way Delay, Offset From Master, Slave to Master, Master to Slave, Observed Drift, Last Packet Received.
问题是我只对记录时间戳和单向延迟感兴趣,以便我可以绘制单向延迟并查看它如何随时间变化。所以我的问题是:
- 是否可以编辑输出(使用 -V 命令)以便仅打印时间戳和单向延迟?
使用-V
命令,输出看起来(一行 - 逗号分隔):
2017-10-12 14:41:48.763883, slv, b827ebfffe9adfc7(unknown)/01, 0.045879356, -0.145651366, 0.319974024, -0.108966784, -500000.000000000, S
答案1
你不能通过管道连接到 awk 吗?例如
sudo ptpd --interface wlan0 -s -L -V | awk /Timestamp,OneWayDel/ > onewaydelay.csv
答案2
你要找的是
| awk -F, '{printf "%s,%s\n",$1,$4;}'
在哪里
-F,
告诉 awk 用逗号分隔字段printf "%s,%s\n",$1,$4;
打印第一个和第四个字段,用 , 分隔(您可以使用 ; 如果您愿意)
只拥有HMS
| awk -F, '{printf "%s,%s\n",substr($1,10,8),$4;}'
使用substr(string,from,length)
awk 函数。