使用telegram-cli lua脚本将接收的消息保存到变量中

我正在尝试将消息内容保存到变量中的sh脚本中,为了触发此操作,我以单词"test"开头的telegram消息

我在我的odroid上运行的lua脚本中有这个

-- 测试:
action, variable=msg.text:match("+ %b %s")
if (action=='test' or action=='Test') then
os.execute(string.format("/home/scripts/test.sh \"%s\" &",variable))

如果我发送:"test i want this text in the variable"通过telegram到到odroid,什么都不做。 我尝试了很多("+ %b %s")的变化,但是它不起作用 知道我做错了什么吗?

ps。触发词"test"不应保存到变量中

点赞
用户6834680
用户6834680

将字符串作为命令行参数传递的标准方法如下所示:

variable = msg.text:match"^[Tt]est%s*(.*)$"
if variable then
  os.execute("/home/scripts/test.sh '"..variable:gsub("'", "'\\''").."'&")
end

test.sh 如何处理字符串?可能会出现空格消失的问题。

2019-02-18 07:24:32