我在为大部分时间挣扎之后寻找解决方案。总之我的困境看起来很简单。一个有效的解决方案似乎难以捉摸的基础上谷歌和Stackoverflow 点击我有这一个。如何更改Windows USERNAME环境变量字符串?
(EDIT)
我需要澄清用例。我们可能有6个用户需要运行使用“%USERNAME%
”字符串登录到区分大小写的环境,Linux,MySQL等的某些脚本。一个用户名是混合案例。在这个例子中,我使用了我的名字:“Will”,它必须是“will”(全部小写)。
- 虽然普遍的问题是%USERNAME%环境变量的值怎么会改变,当它被误进入?
目前我的Windows 7专业版的用户名是 “将”,但环境变量有这个值:
echo. User = %USERNAME%
User = Will
我需要它来输出为:
User = will
rem * All lower-case
要清楚...
我想ch ange(源)值当我登录时,Windows设置USERNAME环境变量。
我认为这将是容易找到设置或配置选项来改变这个字符串 - 直到我试过了。我想,这一定会发生从相关得到一个用户名的问题经常判断与Cygwin的工作,等等。
问题
困扰我太多,因为这是一个混乱的脚本“修复”在登录环境中很基本。
我也在办公室做了一个快速调查。有些人有混合的情况,有一两个小写字母。这看起来是任意的,具体取决于帐户创建时输入的内容或其他内容。
我们的管理员在域名(不,不是活动目录)上查找我的帐户,与我的登录屏幕“will”(小写)相同。
最后我做了一些实验。我在Users控制面板中更改了我的用户名
from: "will" to "xxwill"
想一想肯定会更新我的USERNAME字符串。我退出了。我又做了一次,第二次重新启动。结果是非常令人惊讶的(或者它本不应该是):
User = Will
rem * NO change for the "xxwill" name-change!
有些更深层次的。我创建了一个账户“dodo”和账户“Dogdo”,并分别将用户名改为“Dodo”和“dogdo”。
User = dodo
User = Dogdo
rem * NO change for name-changes!
我看到USERNAME不能被这样改变。我无法编辑高级选项中的系统环境变量。它可能在配置文件中。但你可以编辑一个配置文件,甚至看里面它只有管理员权限?我还不知道;我不确定这是我的首选路由,因为它是从某个原始设置某处某处“输出”的黑客行为。
我希望有人可以直接设置我,所以我不需要脚本解决方案。
我想不需要操纵该值。我认为Windows应该将USERNAME设置为我登录的名称。由于它不会 - 我需要明确地改变它。如果可能。 – will
如果需要,您可以直接设置'username'而不是'usernamelc',但是这样的设置仅适用于当前'cmd'实例。对于创建每个实例的其他实例重新建立它,但将其设置为用户变量覆盖系统设置(在该cmd实例中) – Magoo
我认为必须存在误解。在你的Windows PC上创建一个“Fred”的用户名。然后将登录用户的名称改为(比如):“Malcom”。所以现在用户名是“Malcom”。当你以_Malcom_的身份登录并打印'echo%USERNAME%'时......输出应为“Fred”(永远如此)。我想知道,如何在登录过程中修改_loaded-in-to_ ... USERNAME字符串。 – will