1
我想写基本上运行一个命令,一些科特林代码:我将如何编写遍历子流程并处理其输出的惯用kotlin代码?
Runtime.getRuntime().exec("mycommand.sh")
但是,在这种情况下mycommand.sh
永远不会退出。它将零星地输出我想要处理的文本。假设输出是这样的:
FOOBAR 1234
BARFOO 54657
ETCETC 9876
假设第一行进入5秒,然后第二行进入10秒,第三行进入15秒。
我该如何编写接收每行的代码,并处理它? 例如,也许我想提取所有大写的单词,并提取后面的数字,然后将这两段文本存储为散列映射中的键值。
作为奖励,我很想知道如何从kotlin程序中终止子进程(signal with SIGINT?)。