下記のスクリプトを実行しています。
sudo hexdump -v -e '1/1 "%02x\n"' /dev/ttyUSB0 | Many Pipes | gawk '{ print strftime(":: %s"), $0 }'
ここにあるデータは、以下のようにタイムスタンプが指定された16進ダンプです。
:: 1461680718 ::ED.DATA
:: 1461680718 ::ED.DATA
:: 1461680718 ::ED.DATA
:: 1461680718 ::ED.DATA
:: 1461680718 ::ED.DATA
:: 1461680718 ::ED.DATA
:: 1461680719 ::ED.DATA
ご覧のとおり、すべてのパケットの時間は変わりません。行を読み取る代わりにデータをダンプするためだと思います。これをスクリプトで作成し、各パケットに対して異なる値(秒単位)を取得する方法はありますか?
ベストアンサー1
同じ時間はバッファリングでも発生します。キューにバッファーされたコマンドを見つけて、そのコマンドを試してください。unbuffer
。