我需要编写一个显示计算机名称,用户名和用户文件路径的程序。所有这些都应该从本地系统变量中获取。已经暗示我应该使用set
命令,但是,我不确定如何在这种情况下使用set命令...我曾假设我可以使用echo %COMPUTERNAME%
等。如何实现set命令?
答案 0 :(得分:1)
我猜测有关Set
命令的提示是这样的,您可以使用它的输出来帮助您识别要在批处理文件中使用的本地系统变量,而不是您需要使用{ {1}}输出它们。
当您在命令提示符处输入Set
时,您将获得显示每个已定义系统变量的输出。
此外,如果您在提示符处输入Set
,您应该会得到输出,显示所有以字符串Set ComputerName
开头的变量。
因此,基于ComputerName
命令的输出,您可以Set
,批处理文件中的三个变量如下:
Echo
您还可以包含变量及其值:
@Echo Off
Echo %ComputerName%
Echo %UserName%
Echo %UserProfile%
您还可以考虑在批处理文件中运行简单的@Echo Off
Echo %%ComputerName%%=%ComputerName%
Echo %%UserName%%=%UserName%
Echo %%UserProfile%%=%UserProfile%
循环,以直接使用For
命令显示相同的内容:
Set
或者您可以使用嵌套@Echo Off
For %%A In (ComputerName,UserName,UserProfile) Do Set %%A
Pause
循环中的Set
和Echo
返回其值:
For
答案 1 :(得分:1)
将问题视为非文字(“使用set
命令显示计算机名称”):
set computername
set username
set userprofile
输出如:
COMPUTERNAME=Elon-PC
USERNAME=Muscrat
USERPROFILE=C:\Users\Muskrat
(Compo在他的回答中已经有了这个方法,但我想使用for
命令超出了你课程当前状态的界限。
(注意:在实际使用中,在大多数情况下,Compo的答案(使用变量)更好,因为在实践中,你可能会做某些值,而不是“只是” show 他们,但这确实回答了你的问题)