如何在 Linux 中使 input/output 重定向超时?

How can I time out an input/output redirection in Linux?

我想知道是否可以在 Linux 中使 input/output 重定向超时。

意思是我想将某些 input/output 重定向到一个文件,例如 2 秒的时间跨度。

在实际情况下,我希望仅在 2s

期间将 tty0 写入文件
cat /dev/tty0 >> ~/uart.txt

我怎样才能做到这一点?

谢谢

在大多数 linux 上,您应该可以访问 timeout

timeout 2 cat /dev/tty >> ~/uart.txt

这将在 2 秒后发送一个 SIGTERM。如果您想要不同的信号,请使用 -s。如果您想跟进 SIGKILL,请使用 -k。 man timeout 了解详情。