如何加倍烟斗
how to double pipe candump
当使用 candump 读取 can 总线时:
$ candump can0
如果我 grep 一次:
$ candump can0 | grep <whatever>
完美运行:
$ candump can0 | grep 1A8
can0 1A8 [8] 3C 53 C5 FF 0D C3 3A 01
can0 1A8 [8] 3C 53 C5 FF 0D C3 3A 01
如果我尝试 grep 两次:
candump can0 | grep 1A8 | grep 1A8
它returns没什么...
Ps :可以通过使用这个来解决(candump can0,<whatever>,7ff | grep <whatever>
但它只适用于那种精确的情况)
编辑:为清楚起见,如果我对相同的内容进行 grep 两次,它仍然无法正常工作
问题不是来自 candump
,而是来自缓冲输出的 grep
。
您可以找到对此行为的很好解释 here。
当使用 candump 读取 can 总线时:
$ candump can0
如果我 grep 一次:
$ candump can0 | grep <whatever>
完美运行:
$ candump can0 | grep 1A8
can0 1A8 [8] 3C 53 C5 FF 0D C3 3A 01
can0 1A8 [8] 3C 53 C5 FF 0D C3 3A 01
如果我尝试 grep 两次:
candump can0 | grep 1A8 | grep 1A8
它returns没什么...
Ps :可以通过使用这个来解决(candump can0,<whatever>,7ff | grep <whatever>
但它只适用于那种精确的情况)
编辑:为清楚起见,如果我对相同的内容进行 grep 两次,它仍然无法正常工作
问题不是来自 candump
,而是来自缓冲输出的 grep
。
您可以找到对此行为的很好解释 here。