2022年批处理变量 .pdf
批处理中的变量一、系统变量他们的值由系统将其依据事先定义的条件主动赋值,也就是这些变量体系已经给他们定义了值,不须要我们来给他赋值,我们只须要调用而以! 我把他们全体列出来! 1. %ALLUSERSPROFILE% 返回“所有用户”配置文件的地位。示例: C:Documents and SettingsAll Users 2. %APPDATA% 本地返回默认情形下利用程序存储数据的地位。示例: C:Documents and SettingsAdministratorApplication Data 3. %CD% 本地返回当前目录字符串。示例:堂小脚本4. %CMDCMDLINE% 本地返回用来启动当前的Cmd.exe 的正确命令行。示例:堂小脚本 2.bat 5. %CMDEXTVERSION% 系统返回当前的“命令处理程序扩大”的版本号。示例: 2 6. %COMPUTERNAME% 系统返回盘算机的名称。示例: HP05281125 7. %COMSPEC% 体系返回命令行说明器可履行程序的正确路径。示例:C:WINDOWSsystem32cmd.exe 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - 8. %DATE% 系统返回当前日期。使用与date /t 命令雷同的格局。由Cmd.exe 生成。有关date 命令的具体信息,请参阅Date 。示例: 2011-01-12 星期三9. %ERRORLEVEL% 系统返回上一条命令的过错代码。通常用非零值表现毛病。示例: 9009 10.%HOMEDRIVE% 系统返回衔接到用户主目录的本地工作站驱动器号。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。示例: C: 11.%HOMEPATH% 体系返回用户主目录的完全路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。示例: Documents and SettingsAdministrator 12.%HOMESHARE% 系统返回用户的共享主目录的网络路径。基于主目录值而设置。用户主目录是在 “本地用户和组”中指定的。示例:无13.%LOGONSERVER% 本地返回验证当前登录会话的域把持器的名称。示例: HP05281125 14.%NUMBER_OF_PROCESSORS% 系统指定安装在盘算机上的处理器的数目。示例: 2 15.%OS% 系统返回操作系统名称。Windows 2000 显示其操作系统为Windows_NT 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 示例: Windows_NT 16.%PATH% 系统指定可执行文件的搜索路径。示例: C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem 17.%PATHEXT% 系统返回操作系统以为可执行的文件扩大名的列表。示例: .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH 18.%PROCESSOR_ARCHITECTURE% 系统返回处理器的芯片系统构造。示例: x86 19.%PROCESSOR_IDENTFIER% 系统返回处理器阐明。示例:空20.%PROCESSOR_LEVEL% 系统返回盘算机上安装的处理器的型号。示例: 6 21.%PROCESSOR_REVISION% 系统返回处理器的版本号。示例: 170a 22.%PROMPT% 本地返回当前说明程序的命令提醒符设置。由Cmd.exe 天生。示例: $P$G 23.%RANDOM% 系统返回0 到 32767 之间的任意十进制数字。由Cmd.exe 生成。示例: 30848 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - 24.%SYSTEMDRIVE% 系统返回包括Windows server operating system根目录(即系统根目录)的驱动器。示例: C: 25.%SYSTEMROOT% 系统返回Windows server operating system 根目录的位置。C:WINDOWS 。示例: C:WINDOWS 26.%TEMP% 系统和用户返回对当前登录用户可用的运用程序所应用的默认临时目录。有些利用程序须要TEMP,而其他利用程序则需要TMP。示例: C:DOCUME1ADMINI1LOCALS1Temp 27.%TIME% 系统返回当前时光。应用与time /t 命令雷同的格局。由Cmd.exe 天生。有关time 命令的具体信息,请参阅Time 。示例: 19:55:12.75 28.%USERDOMAIN% 本地返回包括用户帐户的域的名称。示例: HP05281125 29.%USERNAME% 本地返回当前登录的用户的名称。示例: Administrator 30.%USERPROFILE% 本地返回当前用户的配置文件的位置。示例: C:Documents and SettingsAdministrator 31.%WINDIR% 系统返回操作系统目录的地位。示例: C:WINDOWS 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 8 页 - - - - - - - - - 这么多系统变量,我们如何知道他的值是什么呢? 在 CMD 里输入echo %WINDIR% windir 变量名 ,不是随意乱输的! 这样就能显示一个变量的值了! 举个实际例子 ,比如我们要复制文件到当前帐号的启动目录里就可以这样开始菜单程序 启动 %USERNAME% 本地返回当前登录的用户的名称。注意有空格的目录要用引号引起来另外还有一些系统变量,他们是代表一个意思,或者一个操作! 他们分辨是 %0 %1 %2 %3 %4 %5 .一直到 %9 还有一个 %* %0 这个有点特别,有几层意思 ,先讲 %1-%9的意思 . 32.%1%9 %1 返回批处理的第一个参数%2 返回批处理的第二个参数%3-%9依此推类反回批处置参数?到底怎么个返回法? 我们看这个例子,把下面的代码保存为test.BAT 然后放到C 盘下echo off echo %1 %2 %3 %4 echo %1 echo %2 echo %3 echo %4 进入 CMD,输入 cd c: 然后输入test.bat 我是第一个参数我是第二个参数我是第三个参数我是第四个参数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 8 页 - - - - - - - - - 注意中间的空额,我们会看到这样的成果: 我是第一个参数我是第二个参数我是第三个参数我是第四个参数我是第一个参数我是第二个参数我是第三个参数我是第四个参数对照下代码 ,%1 就是我是第一个参数%2 就是我是第二个参数这些 %1 和%9 可以让批处理也能带参数运行,大大进步批处置功效! 33.%* 他是什么呢 ?他的作用不是很大,只是返回参数而已,不过他是一次返回全体参数的值,不用在输进 %1 %2来断定一个个的例子echo off echo %* 同样保留为test.bat 放到 C 盘进入 CMD,输入 cd c: 然后输进test.bat 我是第一个参数我是第二个参数我是第三个参数我是第四个参数可以看到他一次把全体参数都显示出来了34.%0 好现在开始讲那个比拟特别的%0 %0 这个不是返回参数的值了,他有两层意思 ! 第一层意思 :返回批处理所在尽对路径例子 : 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 8 页 - - - - - - - - - echo off echo %0 pause 保留为 test.BAT 放在桌面运行,会显示如下成果桌面 test.bat 他把当前批处理执行的所在路经打印出来了,这就是返回批处理所在尽对路径的意思第二层意思 :无穷循环执行BAT 例子 : echo off net user %0 保存为 BAT 履行 ,他就会无穷循环执行net user 这条命令 ,直到你手动结束. 以上就是批处理中的一些系统变量,另外还有一些变量,他们也表现一些功效, FOR 命令中的那些就是,FOR 变量已经说过 ,就不讲了 . 二、自定义变量顾名思义, 自定义变量就是由我们来给他赋予值的变量要应用自定义变量就得使用set 命令了,看例子。echo off set var= 我是值echo %var% pause 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 8 页 - - - - - - - - - 保留为 BAT 履行 ,我们会看到CMD 里返回一个我是值 var 为变量名 ,= 号右变的是要给变量的值这就是最简略的一种设置变量的方式了假如我们想让用户手工输入变量的值,而不是在代码里指定,可以用用set 命令的 /p 参数例子 : echo off set /p var=请输进变量的值echo %var% pause var 变量名= 号右边的是提醒语,不是变量的值变量的值由我们运行后自己用键盘输入! 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 8 页 - - - - - - - - -