从 systemd 服务调用 stty

从 systemd 服务调用 stty

我有一个expect想在启动时运行的脚本。除其他外,它配置了一些串行端口。当我通过 systemd 运行它时,我得到:

couldn't read file "/dev/tty": no such device or address while executing exec /bin/stty -F /dev/ttyACM0 ... </dev/tty

我认为这是因为systemd在没有控制终端的情况下将服务作为进程运行,但是有办法解决这个问题吗?被调用的脚本没有引用/dev/tty

stty -F /dev/ttyACM0 ...

答案1

您有两种方法来告诉stty要配置哪个 tty,或者使用-F /dev/your_tty,或者像 中那样重定向 stdin < /dev/your_tty

两者同时使用是没有意义的。< /dev/tty最后把它去掉就可以了。

编辑

经过您的编辑:现在的问题是为什么调用首先stty被转换为 with 。< /dev/tty

相关内容