《2022年批处理中的变量》由会员分享,可在线阅读,更多相关《2022年批处理中的变量(8页珍藏版)》请在金锄头文库上搜索。
1、批处理中的变量2009年 07 月 17 日 星期五 16:31 批处理中的变量 , 我把他分为两类 , 分别为 系统变量 和自定义变量 我们现在来详解这两个变量! 系统变量 : 他们的值由系统将其根据事先定义的条件自动赋值, 也就是这些变量系统已经给他们定义了值 , 不需要我们来给他赋值 , 我们只需要调用而以 ! 我把他们全部列出来 ! %ALLUSERSPROFILE% 本地 返回“所有用户”配置文件的位置。%APPDATA% 本地 返回默认情况下应用程序存储数据的位置。%CD% 本地 返回当前目录字符串。%CMDCMDLINE% 本地 返回用来启动当前的 Cmd.exe 的准确命令行。
2、%CMDEXTVERSION% 系统 返回当前的“命令处理程序扩展”的版本号。%COMPUTERNAME% 系统 返回计算机的名称。%COMSPEC% 系统 返回命令行解释器可执行程序的准确路径。%DATE% 系统 返回当前日期。使用与 date /t 命令相同的格式。由 Cmd.exe 生成。有关date 命令的详细信息,请参阅 Date 。%ERRORLEVEL% 系统 返回上一条命令的错误代码。通常用非零值表示错误。%HOMEDRIVE% 系统 返回连接到用户主目录的本地工作站驱动器号。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。%HOMEPATH% 系统 返回用户主目录
3、的完整路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。%HOMESHARE% 系统 返回用户的共享主目录的网络路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。%LOGONSERVER% 本地 返回验证当前登录会话的域控制器的名称。%NUMBER_OF_PROCESSORS% 系统 指定安装在计算机上的处理器的数目。%OS% 系统 返回操作系统名称。 Windows 2000 显示其操作系统为Windows_NT 。%PATH% 系统 指定可执行文件的搜索路径。%PATHEXT% 系统 返回操作系统认为可执行的文件扩展名的列表。名师资料总结 - - -精品资料
4、欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - %PROCESSOR_ARCHITECTURE% 系统 返回处理器的芯片体系结构。值:x86 或IA64 基于Itanium %PROCESSOR_IDENTFIER% 系统 返回处理器说明。%PROCESSOR_LEVEL% 系统 返回计算机上安装的处理器的型号。%PROCESSOR_REVISION% 系统 返回处理器的版本号。%PROMPT% 本地 返回当前解释程序的命令提示符设置。由 Cmd.exe 生成
5、。%RANDOM% 系统 返回 0 到 32767 之间的任意十进制数字。由 Cmd.exe 生成。%SYSTEMDRIVE% 系统 返回包含 Windows server operating system 根目录(即系统根目录)的驱动器。%SYSTEMROOT% 系统 返回 Windows server operating system 根目录的位置。%TEMP% 和 %TMP% 系统和用户返回对当前登录用户可用的应用程序所使用的默认临时目录。有些应用程序需要 TEMP ,而其他应用程序则需要 TMP 。%TIME% 系统 返回当前时间。使用与 time /t 命令相同的格式。由 Cmd.e
6、xe 生成。有关time 命令的详细信息,请参阅 Time。%USERDOMAIN% 本地 返回包含用户帐户的域的名称。%USERNAME% 本地 返回当前登录的用户的名称。%USERPROFILE% 本地 返回当前用户的配置文件的位置。%WINDIR% 系统 返回操作系统目录的位置。这么多系统变量 , 我们如何知道他的值是什么呢? 在 CMD 里输入 echo %WINDIR% windir变量名, 不是随便乱输的 ! 这样就能显示一个变量的值了! 举个实际例子 , 比如我们要复制文件到当前帐号的启动目录里就可以这样开始菜单程序 启动 %USERNAME% 本地 返回当前登录的用户的名称。注
7、意有空格的目录要用引号引起来另外还有一些系统变量 , 他们是代表一个意思 , 或者一个操作 ! 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 他们分别是 %0 %1 %2 %3 %4 %5 .一直到 %9 还有一个 %* %0 这个有点特殊 , 有几层意思 , 先讲%1-%9 的意思 . %1 返回批处理的第一个参数%2 返回批处理的第二个参数%3-%9 依此推类反回批处理参数 ?到底怎么个返回法 ? 我们看这个例子 , 把下
8、面的代码保存为test.BAT 然后放到 C盘下echo off echo %1 %2 %3 %4 echo %1 echo %2 echo %3 echo %4 进入 CMD, 输入 cd c: 然后输入 test.bat 我是第一个参数我是第二个参数我是第三个参数我是第四个参数注意中间的空额 , 我们会看到这样的结果 : 我是第一个参数我是第二个参数我是第三个参数我是第四个参数我是第一个参数我是第二个参数我是第三个参数我是第四个参数对比下代码 ,%1就是我是第一个参数 %2就是我是第二个参数怎么样理解了吧 ! 这些%1和%9可以让批处理也能带参数运行, 大大提高批处理功能 ! 还有一个 %
9、* 他是什么呢 ?他的作用不是很大 , 只是返回参数而已 , 不过他是一次返回全部参数的值, 不用在输入 %1 %2 来确定一个个的名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - 例子echo off echo %* 同样保存为 test.bat 放到 C盘进入 CMD, 输入 cd c: 然后输入 test.bat 我是第一个参数我是第二个参数我是第三个参数我是第四个参数可以看到他一次把全部参数都显示出来了好现在开始讲那个比较
10、特殊的%0 %0 这个不是返回参数的值了, 他有两层意思 ! 第一层意思 : 返回批处理所在绝对路径例子: echo off echo %0 pause 保存为 test.BAT 放在桌面运行 , 会显示如下结果桌面test.bat 他把当前批处理执行的所在路经打印出来了, 这就是返回批处理所在绝对路径的意思第二层意思 : 无限循环执行 BAT 例子: echo off net user %0 保存为 BAT执行, 他就会无限循环执行net user这条命令 , 直到你手动停止 . 以上就是批处理中的一些系统变量, 另外还有一些变量 , 他们也表示一些功能 , FOR 命令中的那些就是 ,FO
11、R变量已经说过 , 就不讲了 . 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 8 页 - - - - - - - - - 现在说自定义变量故名思意 , 自定义变量就是由我们来给他赋予值的变量要使用自定义变量就得使用set 命令了 , 看例子 . echo off set var= 我是值echo %var% pause 保存为 BAT执行, 我们会看到 CMD 里返回一个 我是值 var 为变量名 ,=号右变的是要给变量的值这就是最简单的一种设置变量的方法了如果我们想
12、让用户手工输入变量的值, 而不是在代码里指定 , 可以用用 set 命令的/p 参数例子: echo off set /p var=请输入变量的值echo %var% pause var 变量名 =号右边的是提示语 , 不是变量的值变量的值由我们运行后自己用键盘输入! rar 关于收藏夹路径变量悬赏分: 10 - 解决时间: 2009-4-13 11:37我想静默解压一些网址到“ 收藏夹 ” :不知那变量是什么,或应该如何添加。比如解压到windows目录用 %windir% 但收藏夹的变量是什么?因为收藏夹有的在C 盘,有的在其它盘,真不知怎样,望高人指定一下,谢谢问题补充:%userpro
13、file%这个不行吧?如果系统装在C 盘,收藏夹在D 盘怎办?提问者:main365 - 见习魔法师二级最佳答案最好把收藏夹放C 盘以外,免得重装系统后丢失:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 8 页 - - - - - - - - - 把一下文字编辑到文件“ 收藏夹 .reg ”:Windows Registry Editor Version 5.00 HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersi
14、onExplorerShell Folders Favorites=D:Favorites 然后运行 “ 收藏夹 .reg ”此后如果你想把静默解压一些网址到“ 收藏夹 ” ,只要你的压缩文件名是Favorites ,同时文件位置在,而压缩文件Favorites.rar里面不是包含文件夹而直接是文件的情况下,你就可以直接静默解压缩到:Favorites 文件夹;若Favorites.rar中的内容是Favorites文件夹,则可右键静默解压缩到当前文件夹 1默认是 %userprofile%Favorites 但是,用户有可能把Favorites这个名称更改了,因为它是依据注册表的这个路径:H
15、KEY_USERsSoftwareMicrosoftWindowsCurrentVersionExplorerUser Shell Folders 你把这两点都考虑到就没问题了。在一些批处理或者系统技巧操作教程文章中,我们常常会看到一些形如%windir% 或者 %systemdrive% 的变量。这些变量都代表着什么含义呢?下面西部e 网的 icech 为大家整理了在 Windows XP 下系统变量方式表达相对应的路径,大家可以看得更加清楚明白了!说明:系统文件盘为C 盘,操作系统为Windows XP、登录用户名为weste、计算机 名为 icech 说明:不同的操作系统如Windows
16、 XP 和 Windows 2000 相对应的一些路径是不同的,这里只介绍WinXP 相对应的路径!%AllUsersProfile% 说明:所有用户的配置文件总目录对应路径: C:Documents and SettingsAll Users%USERPROFILE% 说明:指当前用户的配置文件目录对应路径: C:Documents and Settingsweste%HOMEPATH% 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 8 页 - - - - - - -
17、 - - 说明:指当前用户的配置文件目录对应路径: C:Documents and Settingsweste%systemdrive% 说明:系统所在盘对应路径:%HOMEDRIVE% 说明:系统所在盘对应路径:%windir% 说明:系统所在目录对应路径: C:WINDOWS%SystemRoot% 说明: Windows 所在目录对应路径: C:WINDOWS%Temp% 说明:这个是系统的临时文件夹所在目录对应路径: C:Documents and SettingsownerLocal SettingsTemp%Tmp% 说明:这个是系统的临时文件夹所在目录对应路径: C:Docume
18、nts and SettingsownerLocal SettingsTemp%ProgramFiles% 说明: Program Files 程序安装目录名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 8 页 - - - - - - - - - 对应路径: C:Program Files%commonprogramfiles% 说明: Common Files 目录对应路径: C:Program FilesCommon Files%APPDATA% 说明: Applic
19、ation Data 目录对应路径: C:Documents and SettingswesteApplication Data%ComSpec% 说明: cmd.exe 文件路径对应路径: C:WINDOWSsystem32cmd.exe%LOGONSERVER% 说明: cmd.exe 文件路径对应路径: icech同时,以上变量设置还可以通过在CMD 状态下输入set 命令查看。而且可以在鼠标 右键“ 我的 电脑 ” ,选择 “ 系统属性 -高级 -系统变量 ” ,在系统变量里手工可以添加变量。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 8 页 - - - - - - - - -