windows批处理set命令

[设置变量]
格式:set 变量名=变量值
详细:被设定的变量以%变量名%引用

[取消变量]
格式:set 变量名=
详细:取消后的变量若被引用%变量名%将为空

[展示变量]
格式:set 变量名
详细:展示以变量名开头的所有变量的值

[列出所有可用的变量]
格式:set

[计算器]
格式:set /a 表达式
示例:set /a 1+2*3 输出 7

!注意!
set不能用在复合语句里面比如if 1==1 set a=2或者for %%i in (a) do set a=2

预定义的变量

下面是些已经被底层定义好可以直接使用的变量:不会出现在 SET 显示的变量列表中
%CD% - 扩展到当前目录字符串。
%DATE% - 用跟 DATE 命令同样的格式扩展到当前日期。
%TIME% - 用跟 TIME 命令同样的格式扩展到当前时间。
%RANDOM% - 扩展到 0 和 32767 之间的任意十进制数字。
%ERRORLEVEL% - 扩展到当前 ERRORLEVEL 数值。
%CMDEXTVERSION% - 扩展到当前命令处理器扩展名版本号。
%CMDCMDLINE% - 扩展到调用命令处理器的原始命令行。
%0 bat的完整路径名如"C:\Windows\system32\xxx.bat"
%1 bat参数1依次类推%2参数2...
%path% - 当前的环境变量。以分号隔开的路径列表,路径可包含空格,可以以'\'结尾, 可以以双引号包围之。

扩展变量

@ 与%i相关的变量(bat参数或者for循环的%i)
假设文件为C:\Documents and Settings\jinsun\桌面\ParseSinglePkgs.bat
%0        C:\Documents and Settings\jinsun\桌面\ParseSinglePkgs.bat
%~dp0 C:\Documents and Settings\jinsun\桌面\
%cd%   C:\Documents and Settings\jinsun\桌面
%~nx0   ParseSinglePkgs.bat
%~n0     ParseSinglePkgs
%~x0     .bat

@ 与%VAR%相关的变量
%VAR:str1=str2%   会将VAR中的str1替换为str2(str2如果为空则可以达到删除的效果,str1前可以加*,变量%ABC:*B=%是C)
%VAR:~0,-2%          会提取VAR 变量的所有字符,除了最后两个
%VAR:~-2%             会提取VAR 变量的最后两个

系统变量:

他们的值由系统将其根据事先定义的条件自动赋值,我们只需要调用而已

%ALLUSERSPROFILE% (allusersprofile)本地 返回“所有用户”配置文件的位置。 C:Documents and SettingsAll Users

%APPDATA% (appdata)本地返回默认情况下应用程序存储数据的位置。 C:Documents and SettingsAdministratorApplication Data

%CD% (cd)本地返回当前目录字符串。 C:Documents and SettingsAdministrator桌面

%CMDCMDLINE% (cmdcmdline)本地返回用来启动当前的 Cmd.exe 的准确命令行。 cmd /c ""C:Documents and SettingsAdministrator桌面a.bat" "

%CMDEXTVERSION%(cmdextversion)系统返回当前的“命令处理程序扩展”的版本号。2

%COMPUTERNAME% (computername)系统返回计算机的名称。 xxxx

%COMSPEC% (comspec) 系统返回命令行解释器可执行程序的准确路径。 C:WINDOWSsystem32cmd.exe

%DATE% 系统返回当前日期。使用与 date /t 命令相同的格式。由 Cmd.exe 生成。有关 date 命令的详细信息,请参阅 Date。

%ERRORLEVEL% (errorlevel) 系统返回上一条命令的错误代码。通常用非零值表示错误。

%HOMEDRIVE% (homedrive)系统返回连接到用户主目录的本地工作站驱动器号。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。 C:

%HOMEPATH% (homepath) 系统返回用户主目录的完整路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。 Documents and SettingsAdministrator

%HOMESHARE% (homeshare) 系统返回用户的共享主目录的网络路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。

%LOGONSERVER% (logonserver) 本地返回验证当前登录会话的域控制器的名称 \ xxxx

%NUMBER_OF_PROCESSORS% (numeer_of_processors) 系统指定安装在计算机上的处理器的数目。

%OS% (os)系统返回操作系统名称。Windows 2000 显示其操作系统为 Windows_NT。 Windows_NT

%PATH% (path)系统指定可执行文件的搜索路径。 C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:Program FilesVc++ToolsWinNT;C:Program FilesVc++MSDev98Bin;C:Program FilesVc++Tools;C:Program FilesVC98in

%PATHEXT% (pathext)系统返回操作系统认为可执行的文件扩展名的列表。 .COM .EXE .BAT .CMD .VBS .VBE .JS .JSE .WSF .WSH

%PROCESSOR_ARCHITECTURE% (processor_architecture) 系统返回处理器的芯片体系结构。值:x86 或 IA64 基于Itanium x86

%PROCESSOR_IDENTFIER% (processor_identfier)系统返回处理器说明。

%PROCESSOR_LEVEL% (processor_level)系统返回计算机上安装的处理器的型号。 15

%PROCESSOR_REVISION% (processor_revision)系统返回处理器的版本号。 4f02

%PROMPT% (prompt)本地 返回当前解释程序的命令提示符设置。由 Cmd.exe 生成。$P$G

%RANDOM% (random)系统返回 0 到 32767 之间的任意十进制数字。由 Cmd.exe 生成。 30580

%SYSTEMDRIVE% (systemdrive)系统返回包含 Windows server operating system 根目录(即系统根目录)的驱动器。 C:

%SYSTEMROOT% (systemroot)系统返回 Windows server operating system 根目录的位置。C:WINDOWS

%TEMP%(temp) C:DOCUME~1ADMINI~1LOCALS~1Temp和 %TMP% (tmp)C:DOCUME~1ADMINI~1LOCALS~1Temp系统和用户返回对当前登录用户可用的应用程序所使用的默认临时目录。有些应用程序需要 TEMP,而其他应用程序则需要 TMP。

%TIME% 系统 返回当前时间。使用与 time /t 命令相同的格式。由 Cmd.exe 生成。有关 time 命令的详细信息,请参阅 Time。

%USERDOMAIN% (userdomain)本地返回包含用户帐户的域的名称。 xxxx

%USERNAME% (username)本地返回当前登录的用户的名称。 Administrator

%USERPROFILE% (userprofile)本地返回当前用户的配置文件的位置。 C:Documents and SettingsAdministrator

%WINDIR%(windir) 系统 返回操作系统目录的位置。 C:WINDOWS

SET /P variable=[promptString] 

有时候我们需要提供一个交互界面,让  用户自己输入变量的值,然后我们在来根据这个值来做相应操作,现在我就来说说这SET的这  种语法,只需要加一个"/P"参数就可以了!  
实例1:  
@echo off  
set /p var=请输入你的名字:   
echo 您的名字是:%var%
pause    
set /p 是命令语法 var是变量名 =号右边的"请输入变量的值: ",这个是提示语,不是变  
量的值了!  
运行后,我们在提示语后面直接输入robin,就会显示一行您” 您的名字是:robin”

给变量追加内容

输入“set 变量名=%变量名%;变量内容”。如,为path添加一个新的路径,输入“ set path=%path%;d:/nmake.exe”即可将d:/nmake.exe添加到path中,再次执行set path=%path%;c:,那么,使用set path语句来查看的时候,将会有:d:/nmake.exe;c:,而不是像第3步中的只有c:。

二 实例

查看全部环境变量;

查看环境变量值;

可做数学计算;

预定义变量,见前面描述;

定义和取消环境变量;

关于这个一直都有一点疑惑;这个在命令行设置了以后,在计算机属性里打开环境变量查看是没有的;这个估计只是设置一次有效;

图解Win7下set命令使用相关推荐

  1. 图解win7下ping命令使用

    ping (网络诊断工具) Ping是Windows.Unix和Linux系统下的一个命令.ping也属于一个通信协议,是TCP/IP协议的一部分.利用"ping"命令可以检查网络 ...

  2. 图解linux下top命令的使用

    图解linux下top命令的使用 2012-09-27      0个评论    来源:程序员文摘   收藏    我要投稿 top命令经常用来监控linux的系统状况,比如cpu.内存的使用,程序员 ...

  3. oracle10g win7下使用命令启动服务和实例

    oracle10g win7下使用命令启动服务和实例   最近学习oracle相关的知识,看的是韩顺平老师的2011最新玩转oracle的视频,跟着老师联系,学到了不少东西.总结如下: 由于oracl ...

  4. 图解Win7下安装Borland C++ 3.1失败记

    准备写一些C++基本类,记得Borland C++ 3.1.4.5的界面,很好用,适合开发不带Windows界面类库的C++类:准备在本机安装此早期的Borland C++工具. 1 下载 2 看下解 ...

  5. WIN7下通过命令调用“控制面板项” /   RUNDLL32详解 / CPL文件详解

    CPL文件 CPL文件,又叫控制面板项(Control Panel Item),多保存于系统安装目录的system32文件夹下,它们分别对应着控制面板中的项目,普通用户的访问受到限制.它可由shell ...

  6. 图解Win7下PowerShell初步使用

    简介 Powershell 是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境.你可以把它看成是命令行提示符cmd.exe的扩充,不对,应当是颠覆. powershell需要.N ...

  7. win7下使用命令行关闭被某一端口占用的进程

    2019独角兽企业重金招聘Python工程师标准>>> 1. win+R,进入DOS命令行窗口 2. 根据需要关闭的端口号,查对应占用端口程序的进程号 输入命令: # netstat ...

  8. 图解Win7下安装Oracle 12c

    将下载的两个压缩文件同时选中,右击,解压到当前目录,解压出database目录,双击setup启动安装: 1 启动安装 2  3 4  出错,具体信息是, 原因 - 无法访问临时位置.  操作 - 请 ...

  9. android keytool 不是内部命令或外部命令在 (win7下不能用的解决方法)

    android 关于MD5指纹中 keytool在win7下不能用的解决方法 只要在cmd中执行如下命令即可:注意C:\Users\Administrator\.android\debug.keyst ...

最新文章

  1. HDU - 6082 度度熊与邪恶大魔王(背包变式)
  2. mysql同时满足升序和降序_MySQL性能优化(三):索引
  3. java peek函数_Java 8 Stream Api 中的 peek 操作
  4. centos初始配置
  5. 倒计时 1 天!第十六届开源中国开源世界高峰论坛日程曝光,邀您共同缔造开源创新模式!...
  6. python虚拟机 基于寄存器_基于栈虚拟机和基于寄存器虚拟机的比较
  7. bzoj 4517: [Sdoi2016]排列计数(错排+组合数逆元)
  8. Nginx+ffmpeg的HLS开源server搭建配置及开发具体解释
  9. python之小技巧积累
  10. HashTable 源码解析 jdk1.8
  11. jquery1.6.2源码拆分一
  12. Nginx和FastDfs完整配置过程
  13. 广数系统加工中心编程_图解数控铣及加工中心加工工艺与编程——(FANUC系统)/(SIEMENS系统)...
  14. 虚拟机(VMWARE)安装的系统如何访问本地磁盘
  15. CMPSS 涡扇发动机模型
  16. SVN重定向svn switch
  17. C语言zh字符串指针的大小,C语言的一些小技巧,小知识
  18. android studio画板手指位置和画线位置有差_iOS概念画板5版本导出技巧
  19. 关键词查找并标注出来
  20. x265代码解读博客合集

热门文章

  1. SpringMVC自动将请求参数和入参对象的属性进行一一绑定;要求请求参数的名字和javaBean入参的对象里面的属性名是一样的||员工的增删改查案例
  2. MyBatis是持久化层框架(SQL映射框架)-操作数据库
  3. 函数||值传递||函数的常见样式||函数的声明||函数的分文件编写
  4. Elasticsearch的或且非及其组合
  5. Python 相对路径问题:“No such file or directory“,原因及解决方法
  6. PKCS7填充标准代码--C语言实现
  7. 自主定义适合自己的Keil主题
  8. CTFshow 文件上传 web167
  9. CTFshow 信息收集 web11
  10. poj2065 SETI