如何复制/ dev / ttyUSB0流?

时间:2016-07-13 20:55:24

标签: linux bash serial-port duplicates linux-device-driver

有没有办法在Linux上复制串行设备/ dev / ttyUSB0(Ubuntu 14.04)?

我制作了一个从RS232端口读取数据的程序,我想用并行的不同选项执行我的程序的两个实例。但是,我无法从程序中打开/ dev / ttyUSB0两次(在C中写入)。

理想情况下,我希望ttyUSB0驱动程序能够创建两个相同的设备。 (/ dev / ttyUSB0和/ dev / ttyUSB1)。驱动程序将确保ttyUSB1是ttyUSB0的精确副本。

有没有办法从命令行(bash)执行此操作,还是应该创建自己的特殊串口驱动程序?

1 个答案:

答案 0 :(得分:2)

您可以使用tee将写入/dev/ttyUSB0的任何内容输出到两个命名管道。

mkfifo copy1 copy2
tee copy1 copy2 < /dev/ttyUSB0 > /dev/null &
program1 < copy1
program2 < copy2

(严格来说,你只需要一个命名管道;另一个程序可以从直接连接到tee的匿名管道中读取。但这种对称处理方式更为清晰。)