gpt4 book ai didi

lua - 在Lua中获取os.execute的输出

转载 作者:行者123 更新时间:2023-12-03 02:41:34 28 4
gpt4 key购买 nike

当我在 Lua 中执行“os.execute”时,控制台会快速弹出,执行命令,然后关闭。但是有没有办法只使用标准 Lua 库来获取控制台输出?

最佳答案

如果你有 io.popen,那么这就是我使用的:

function os.capture(cmd, raw)  local f = assert(io.popen(cmd, 'r'))  local s = assert(f:read('*a'))  f:close()  if raw then return s end  s = string.gsub(s, '^%s+', '')  s = string.gsub(s, '%s+$', '')  s = string.gsub(s, '[\n\r]+', ' ')  return send

如果您没有 io.popen,那么您的系统上可能无法使用 popen(3),并且您正陷入困境。但所有 unix/mac/windows Lua 端口都会有 io.popen。

(gsub 业务会去掉前导空格和尾随空格,并将换行符转换为空格,这大致就是 shell 使用其 $(...) 语法所做的事情。 )

关于lua - 在Lua中获取os.execute的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/132397/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com