gpt4 book ai didi

lua - 如何使用lua设置bash环境变量

转载 作者:行者123 更新时间:2023-12-04 14:48:28 27 4
gpt4 key购买 nike

我是 lua 脚本功能的新手。我尝试使用,

  1. os.execute("导出 MY_VAR=10")
  2. io.popen("导出 MY_VAR=10")

来自 lua 脚本。

我尝试在执行 lua 脚本后使用 echo $MY_VAR 从 shell 读取 MY_VAR 变量,但我没有看到 MY_VAR 设置为 10。

我们如何使用lua脚本设置环境变量?

最佳答案

你的问题不是 lua 问题。您的问题是误解了流程环境的工作方式。

每次运行 os.executeio.popen 时,您都在运行一个带有 newnew 进程环境。

因此,虽然您可能在该进程环境中正确设置了 MY_VAR(并且它会影响任何作为 that 进程的子进程运行的进程),但它不会在超出已启动进程的死亡,因此任何其他进程都看不到。

如果你想影响 lua 进程的环境(这反过来会影响 lua 运行的进程的环境)那么你需要绑定(bind)到 setenv 系统函数(lua 本身不提供,因为它没有通过 lua 用于它包含的东西的 clean C 测试)。

关于lua - 如何使用lua设置bash环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38907930/

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