批处理——set命令
2016-05-16 20:57
253 查看
标签: 扩展daterandomwindowspathc
2012-03-12 13:57 3205人阅读 评论(1) 收藏 举报
分类:
Batch(5)
有时候windows的批处理能带来很方便的操作,批处理也有变量声明,下面一段就是说的如何使用批处理中的变量。
set 功能一览
[设置变量]
格式:set 变量名=变量值
详细:被设定的变量以%变量名%引用
[取消变量]
格式:set 变量名=
详细:取消后的变量若被引用%变量名%将为空
[展示变量]
格式:set 变量名
详细:展示以变量名开头的所有变量的值
[列出所有可用的变量]
格式:set
[计算器]
格式:set /a 表达式
示例:set /a 1+2*3 输出 7
[设置变量为表达式计算后的值]
set a=1+2
echo %a% ==>输出1+2
————————————
set /a a=1+2
echo %a% ==>输出3
[设置变量为用户输入的值]
set /p a=输入一个值 ==>输出 输入一个值
echo %a% ==>显示用户输入的值
预定义的变量
下面是些已经被底层定义好可以直接使用的变量:不会出现在 SET 显示的变量列表中
%CD% – 扩展到当前目录字符串。
%DATE% – 用跟 DATE 命令同样的格式扩展到当前日期。
%TIME% – 用跟 TIME 命令同样的格式扩展到当前时间。
%RANDOM% – 扩展到 0 和 32767 之间的任意十进制数字。
%ERRORLEVEL% – 扩展到当前 ERRORLEVEL 数值。
%CMDEXTVERSION% – 扩展到当前命令处理器扩展名版本号。
%CMDCMDLINE% – 扩展到调用命令处理器的原始命令行。
%0 bat的完整路径名如”C:Windowssystem32xxx.bat”
%1 bat参数1依次类推%2参数2…
%path% – 当前的环境变量。以分号隔开的路径列表,路径可包含空格,可以以”结尾, 可以以双引号包围之。
扩展变量
@ 与%i相关的变量(bat参数或者for循环的%i)
假设文件为C:Documents and Settingsjinsun桌面ParseSinglePkgs.bat
%0 C:Documents and Settingsjinsun桌面ParseSinglePkgs.bat
%~dp0 C:Documents and Settingsjinsun桌面
%cd% C:Documents and Settingsjinsun桌面
%~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 变量的除前两个的所有字符
%VAR:~-2% 会提取VAR 变量的最后两个
%VAR:~2,5% 提取从第2个字符开始的5个字符
这篇文章看完了就懂了“%date:~0,4%%date:~5,2%%date:~8,2%.sql”是什么意思了。
2012-03-12 13:57 3205人阅读 评论(1) 收藏 举报
分类:
Batch(5)
有时候windows的批处理能带来很方便的操作,批处理也有变量声明,下面一段就是说的如何使用批处理中的变量。
set 功能一览
[设置变量]
格式:set 变量名=变量值
详细:被设定的变量以%变量名%引用
[取消变量]
格式:set 变量名=
详细:取消后的变量若被引用%变量名%将为空
[展示变量]
格式:set 变量名
详细:展示以变量名开头的所有变量的值
[列出所有可用的变量]
格式:set
[计算器]
格式:set /a 表达式
示例:set /a 1+2*3 输出 7
[设置变量为表达式计算后的值]
set a=1+2
echo %a% ==>输出1+2
————————————
set /a a=1+2
echo %a% ==>输出3
[设置变量为用户输入的值]
set /p a=输入一个值 ==>输出 输入一个值
echo %a% ==>显示用户输入的值
预定义的变量
下面是些已经被底层定义好可以直接使用的变量:不会出现在 SET 显示的变量列表中
%CD% – 扩展到当前目录字符串。
%DATE% – 用跟 DATE 命令同样的格式扩展到当前日期。
%TIME% – 用跟 TIME 命令同样的格式扩展到当前时间。
%RANDOM% – 扩展到 0 和 32767 之间的任意十进制数字。
%ERRORLEVEL% – 扩展到当前 ERRORLEVEL 数值。
%CMDEXTVERSION% – 扩展到当前命令处理器扩展名版本号。
%CMDCMDLINE% – 扩展到调用命令处理器的原始命令行。
%0 bat的完整路径名如”C:Windowssystem32xxx.bat”
%1 bat参数1依次类推%2参数2…
%path% – 当前的环境变量。以分号隔开的路径列表,路径可包含空格,可以以”结尾, 可以以双引号包围之。
扩展变量
@ 与%i相关的变量(bat参数或者for循环的%i)
假设文件为C:Documents and Settingsjinsun桌面ParseSinglePkgs.bat
%0 C:Documents and Settingsjinsun桌面ParseSinglePkgs.bat
%~dp0 C:Documents and Settingsjinsun桌面
%cd% C:Documents and Settingsjinsun桌面
%~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 变量的除前两个的所有字符
%VAR:~-2% 会提取VAR 变量的最后两个
%VAR:~2,5% 提取从第2个字符开始的5个字符
这篇文章看完了就懂了“%date:~0,4%%date:~5,2%%date:~8,2%.sql”是什么意思了。
相关文章推荐
- 背包问题之3
- PHP-redis英文文档
- /usr/texbin/pdflatex 不存在。
- crawler4j源码解析
- QSerialPort
- 源代码写文档-启动流程(入口)+运行流程(入口)
- java 性能检测工具 检测死锁等
- 0x00D83DDA 处有未经处理的异常(在 DXFont.exe 中): 0xC000041D: 用户回调期间遇到未经处理的异常
- R语言学习五 函数、循环、条件表达
- [Laravel 5.2]二、注册、登陆及用户认证
- leetcode 338. Counting Bits
- Java线程池
- 顺序搜索和二分搜索
- 汇编语言基础总结(二)
- 你可以用OpenCV来干什么
- 2016Android某公司面试题
- 指针
- java8 构造日期时间
- 系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式
- 了解UNITY中的多线程及使用多线程