Io-Redirection

序列到文件 - 無附加

  • October 18, 2016

我有一個 Arduino 通過串列埠向我的 Ubuntu PC 發送數據。這是有效的,因為我可以在 PC 上打開串列監視器並查看數據。arduino 每 2 秒發送一行數據。我想將輸出重定向到 PC 上的文本文件。我試過:

(stty raw; cat > /home/me/received.txt) < /dev/ttyUSB2

它可以工作,但會將收到的每一行附加到文件中。我希望它每次都覆蓋文件。換句話說,文件中應該只有一行數據,這將是最新收到的。

我認為 < vs << 會解決這個問題,但顯然我錯過了一些東西。誰能指出我正確的方向?

我會嘗試這樣的事情:

(stty raw; while IFS= read -R line; do
printf '%s\n' "$line" &gt; /home/me/received.txt; done) &lt; /dev/ttyUSB2

另一種可能性是稍微濫用 awk:

( stty raw; awk -v f="outfile" '{print &gt;f; close(f)}' )&lt;tty

引用自:https://unix.stackexchange.com/questions/317093