如何在 FIX 日志的 UNIX 命令中获取 FIX 标记之间的竖线 (|) 分隔符?

How to get pipe (|) delimiters between FIX tags in a UNIX command for FIX logs?

我可以通过 运行:

获得标签之间的空格
tail -f filename | tr '[=10=]1' ' '

但我希望尾部输出有 | 个分隔符,即

35=D|49=sender|56=recipient

有人知道怎么做吗?谢谢

你不就是想要这个吗?

tail -f filename | tr '[=10=]1' '|'
                              ^
                              replace space with pipe!

[=11=]1是ASCII字符1,也称为SOH("start of heading")。 FIX 使用此字符作为字段分隔符,即它跟在每个 "tag=value" 元素之后。

unix tr 命令只是用第二个参数 (|).

替换第一个参数 (上面的 [=11=]1) 的所有实例