【发布时间】:2017-05-21 09:54:41
【问题描述】:
提前我是编程/脚本的新手。我主要研究我想要的东西,并在可能的情况下对其进行编辑以满足我的需要。
环境:
- Windows 7
- CMD
- 用户组 = 管理员
- 以用户(管理员)身份启动或以管理员身份启动 cmd 时发生
当我使用 CMD 更改环境设置时,它不会保存到系统中。 示例:
C:\Users\admin>SET TESTVARIABLE = "This is a test"
C:\Users\admin>SET
TESTVARIABLE = "This is a test"
C:\Users\admin>_
关闭 cmd,重新打开,使用 SET 并且测试变量不再存在。
通过System > Advanced System Settings > Environment Variables > System Variables 是我可以积极更改变量的唯一方法。
这也受到我制作的任何 .bat 文件的影响。我的实际上并没有在运行时得到应用,而是我复制的其他人(整个 .bat 文件,不仅仅是文本/上下文)。
这发生在我的(所有工作中的)台式电脑(win10)和 2x 远程桌面(win7)上。我是管理员,我在这些 RDP 上使用管理员用户。
有人知道发生了什么,我缺少什么,我该如何研究或修复它?
【问题讨论】:
-
在命令提示符处输入
SETX /?。 -
它现在工作了,但在错误的位置。我可以看到它使用
set保存在 CMD 中,但是当我查看系统变量时,它不存在。它确实出现在“管理员的用户变量”中,但这不是我需要的地方。我猜有 switch(?) 或 delimiter(?) -
错位是什么意思?顺便说一句,
SET TESTVARIABLE = "This is a test"中等号周围的空格成为 var 名称和内容的一部分。 -
见 setx 的
/M开关。阅读setx /?会有所帮助。 -
谢谢,不知道这样读取的空间。关于阅读
setx /?内容:每当他们提供示例时,我都会迷失方向。我不知道他们在读取 Syntax 1: SETX [/S system [/U [domain]user [/P [password]]]] var value [/M] Syntax 2: SETX [/S system [/ U [domain]user [/P [password]]]] var /K regpath [/M] 语法3:SETX [/S system [/U [domain]user [/P [password]]]] /F file { var {/A x,y | /R x,y 字符串}[/M] | /X} [/D 分隔符]
标签: windows batch-file cmd