CMD中的全名variables

这应该是非常基本的,但我无法弄清楚。

我试图将用户的全名设置为一个variables,以便在批处理脚本中进一步使用。

我认为这应该是这样的:

SET VAR = NET USER%username%/ DOMAIN | find/我“全名”; 回声“%VAR%”

NET USER%用户名%/ DOMAIN | FIND / I“全名”可以自行工作,但不是在我尝试将其设置为variables时。

也许这是更普遍的问题..

您可以使用临时文件或/ f来实现此目的:

临时文件解决方案

NET USER %username% /DOMAIN | FIND /I "Full name" >tmp.txt set /p VAR=<tmp.txt echo %VAR% del tmp.txt 

for / f解决方案:

 for /f "tokens=*" %i in ('NET USER %username% /DOMAIN ^| FIND /I "Full name"') do set VAR=%i 

注意:

  • 如果在批处理文件中使用上述命令,请将%替换为%%
  • 使用"tokens=*"来匹配命令的所有输出
  • ^被使用,因为| (管道)必须逃脱 。

您可以使用已经指定的%用户名%和%userdomain%。

为值列表键入set

类型set /? 获取动态变量的列表。