Lua的os.getenv为什么在批处理文件中无法正常工作?
- 内容介绍
- 文章标签
- 相关推荐
本文共计315个文字,预计阅读时间需要2分钟。
我编写了一个小脚本,用于读取我的PATH环境变量并将其存储在一个文件中。每天运行一次,以便于使用。以下是代码:
pythonpath=os.getenv(PATH)file_name=C:\\temp.txtwith open(file_name, w) as file: file.write(path)
如果从命令行运行它,就可以方便地使用PATH变量。
我有一个小脚本来读取我的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提供的,因此它不起作用”.事实上,其他一些env变量(如用户名)工作正常.
我有两个问题:
>为什么shell无法访问PATH?我以为会的
制作环境的副本(所以只设置env变量会有问题)?
>以我可以添加的方式读取PATH的最佳方法是什么
它给调度程序?
cmd /c C:\path\to\lua myfile.lua
本文共计315个文字,预计阅读时间需要2分钟。
我编写了一个小脚本,用于读取我的PATH环境变量并将其存储在一个文件中。每天运行一次,以便于使用。以下是代码:
pythonpath=os.getenv(PATH)file_name=C:\\temp.txtwith open(file_name, w) as file: file.write(path)
如果从命令行运行它,就可以方便地使用PATH变量。
我有一个小脚本来读取我的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提供的,因此它不起作用”.事实上,其他一些env变量(如用户名)工作正常.
我有两个问题:
>为什么shell无法访问PATH?我以为会的
制作环境的副本(所以只设置env变量会有问题)?
>以我可以添加的方式读取PATH的最佳方法是什么
它给调度程序?
cmd /c C:\path\to\lua myfile.lua

