我如何在 Arduino Yun 中使用 Process class 来读取一些流数据?
How can I use Process class in Arduino Yun to read some stream-data?
运行 shell 命令通过 Bridge
在 Arduino Yun
通过 Process
比方说,proc
,它给出了结果,我们可以使用以下代码读取结果字节。
#include <Bridge.h>
#include <Process.h>
void setup() {
Bridge.begin();
Serial.begin(9600);
while (!Serial);
}
void loop() {
Process proc;
proc.runShellCommand("ls /root/");
while (proc.available() > 0)
Serial.print((char)proc.read());
Serial.println();
}
如果我必须从阻塞的 shell 命令访问数据,因为它像 event
一样被更新怎么办?例如,一些收听 Kafka
或 Mosquitto
订阅主题的消费者。每当该主题 updated/published 有新数据时,听众就会得到它。
如何使用 Bridge
.Bridge
.
使用 Arduino Yun
程序对这种结构进行建模
你可以很容易地做到这一点。
运行 具有 nohup
的特定命令,在这种情况下,将创建名称为 nohup.out
的文件。然后 运行 一个脚本持续监视 nohup.out
文件以防 nohup.out
的大小发生任何变化,获取最新数据并将该数据推送到您想要的任何地方。
运行 shell 命令通过 Bridge
在 Arduino Yun
通过 Process
比方说,proc
,它给出了结果,我们可以使用以下代码读取结果字节。
#include <Bridge.h>
#include <Process.h>
void setup() {
Bridge.begin();
Serial.begin(9600);
while (!Serial);
}
void loop() {
Process proc;
proc.runShellCommand("ls /root/");
while (proc.available() > 0)
Serial.print((char)proc.read());
Serial.println();
}
如果我必须从阻塞的 shell 命令访问数据,因为它像 event
一样被更新怎么办?例如,一些收听 Kafka
或 Mosquitto
订阅主题的消费者。每当该主题 updated/published 有新数据时,听众就会得到它。
如何使用 Bridge
.Bridge
.
Arduino Yun
程序对这种结构进行建模
你可以很容易地做到这一点。
运行 具有 nohup
的特定命令,在这种情况下,将创建名称为 nohup.out
的文件。然后 运行 一个脚本持续监视 nohup.out
文件以防 nohup.out
的大小发生任何变化,获取最新数据并将该数据推送到您想要的任何地方。