gpt4 book ai didi

Lua os.getenv 在批处理文件中不起作用

转载 作者:行者123 更新时间:2023-12-05 00:23:44 26 4
gpt4 key购买 nike

我有一个小脚本来读取我的 PATH 并将其存储在一个文件中,我希望安排每天运行。

path = os.getenv("PATH")
file_name = "C:\\temp.txt"
file = io.open(file_name, "w")
file:write(path)
file:close()

如果我从命令行运行它,它可以工作,但是当我创建批处理文件(我在 Windows XP 上工作)并双击它时 - os.getenv("PATH") 返回 false。批处理文件:
"C:\Program Files\Lua\5.1\lua" store_path.lua

我在评论中阅读 this question它“不是进程环境变量,它是由 shell 提供的,所以它不会工作”。事实上,一些其他环境变量(如用户名)工作正常。

我的两个问题是:
  • 为什么 shell 无法访问 PATH?我以为会
    制作环境的副本(所以只有设置 env 变量会有问题)?
  • 以我可以添加的方式读取 PATH 的最佳方式是什么
    它给调度程序?
  • 最佳答案

    让批处理文件从 shell 运行它,以便您获得 shell 变量:

    cmd /c C:\path\to\lua myfile.lua

    关于Lua os.getenv 在批处理文件中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16302677/

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