我试图使用Lua杀死进程:我的bash脚本" run.sh"每2秒打印一个字符串,到现在为止,我能够实时捕获输出,但每当我向电报机器人发送命令时,我也需要退出该过程
这是我的实际代码:
local bot, extension = require("lua-bot-api").configure('myBotToken')
local function test()
local pipe = io.popen'/home/ubuntu/workspace/LmBot/run.sh'
repeat
local c = pipe:read("*line")
if c then
io.write(c)
io.flush()
bot.sendMessage(msg.from.id,c,"Markdown")
end
until not c
pipe:close()
end
extension.onTextReceive = function(msg)
local matches = {msg.text:match('^/(.+)$')}
if(matches[1]=='start')then
test()
end
end
extension.run()
正如你所看到的,当我发送命令/启动时,它运行我的bash脚本(这是一个子进程吗?我是对的吗?)然后向我发回一条消息,其输出实时解析。 我现在需要能够杀死之前开始的进程,有没有办法使用lua?
提前谢谢大家:)