原文地址:https://www.cnblogs.com/Braveliu/p/5081084.html

【1】set命令简介

  set,设置。

【2】set命令使用

  1. 打印系统环境变量。set命令可以打印系统所有的环境变量信息。

  应用示例:新建文本文件,命名为set_sys,修改文件类型为bat,用Notepad++打开编辑内容如下:

 1 @echo off
2 ::set 显示所有系统环境变量
3 ::set (暂时屏蔽掉,需要执行请去掉::)
4 pause>nul
5 ::set c 显示所有以C开头的环境变量(不区分大小写)
6 set c
7 pause>nul
8 ::set q 显示所有以Q开头的环境变量(不区分大小写)
9 set q
10 pause>nul

  执行结果:

  命令解析:

  第 3 行:由于打印系统环境变量信息太多,暂时屏蔽掉,若有兴趣在本机测试时候可以去掉屏蔽命令(::)

  第 6 行:打印所有以C开头的环境变量信息(不区分大小写)

  第 9 行:打印所有以Q开头的环境变量信息(不区分大小写)

  2. 变量设置值。

  应用示例:新建文本文件,命名为set_value,修改文件类型为bat,用Notepad++打开编辑内容如下:

 1 @echo off
2 set var=呵呵~我是变量var的值
3 echo %var%
4 set var=abcdefg
5 echo %var%
6 set var="abcdefg"
7 echo %var%
8 set "var=abcdefg"
9 echo %var%
10 pause>nul

  执行结果:

  命令解析:

  注意:各种为变量赋值的写法,以及存在的差异性。

  3. set /p命令。

  应用示例:新建文本文件,命名为set_p,修改文件类型为bat,用Notepad++打开编辑内容如下:

1 @echo off
2 set /p var=请输入变量的值:
3 echo 你输入的值是:%var%
4 pause>nul

  执行结果:

  命令解析:

  /p命令语法,作用可以在用户输入前加一段说明性的描述,即想让用户输入什么内容之类的说明。

  4. set /a命令。

  应用示例:新建文本文件,命名为set_a,修改文件类型为bat,用Notepad++打开编辑内容如下:

 1 @echo off
2 rem +运算符
3 set /a var=1+1
4 echo %var%
5 rem ()运算符
6 set /a var=(1+1) + (1+1)
7 echo %var%
8 rem *运算符
9 set /a var*=2
10 echo %var%
11 rem ,运算符 注意:求varB和varC时,两种写法的区别
12 set /a varA=var, varB=%var%*2, varC=var*3
13 echo %varA% %varB% %varC%
14 rem 与运算符,必须双引号括起来
15 set /a varD=1"&"0
16 echo %varD%
17 rem 或运算符,必须双引号括起来
18 set /a varE=1"|"0
19 echo %varE%
20 rem 异运算符,必须双引号括起来
21 set /a varF=0"^"0
22 echo %varF%
23 pause>nul

  执行结果:

  命令解析:

  详情见脚本注释。/a expression 即可以用各种表达式为变量赋值。

  5. set替换作用

  应用示例:新建文本文件,命名为set_swap,修改文件类型为bat,用Notepad++打开编辑内容如下:

 1 @echo off
2 set src= China I love you
3 echo 替换前的值: "%src%"
4 set des=%src:love=hate%
5 echo 替换后的值: "%des%"
6 set des=%src: =123%
7 echo 替换后的值: "%des%"
8 set des=%src:I=me%
9 echo 替换后的值: "%des%"
10 set des=%src:you=she%
11 echo 替换后的值: "%des%"
12 pause>nul

  执行结果:

  命令解析:

  同样的语句,写了那么多,如果你有点归纳总结的能力,估计应该可以看出来了。

  总结个模板,即如此:set des=%src:str1=str2%

  作用简述:把源变量src的值中所有的str1字符串替换成str2字符串,从而组合形成目标变量des的值。

  6. set取舍作用

  应用示例:新建文本文件,命名为set_at,修改文件类型为bat,用Notepad++打开编辑内容如下:

 1 @echo off
2 set src=www.baidu.com.cn
3 echo %src%
4 set des=%src:~1,2%
5 echo %des%
6 set des=%src:~4,5%
7 echo %des%
8 set des=%src:~1,7%
9 echo %des%
10 set des=%src:~5%
11 echo %des%
12 set des=%src:~-5%
13 echo %des%
14 set des=%src:~0,-5%
15 echo %des%
16 set des=%src:~2,-3%
17 echo %des%
18 pause>nul

  执行结果:

  命令解析:

  第 4 行:~1,2 表示:把源变量src的值字符串从第1个索引位开始,取2位组成目标变量des的值(即:ww)。

  第 6 行:~4,5 表示:把源变量src的值字符串从第4个索引位开始,取5位组成目标变量des的值(即:baidu)。

  第 8 行:同理第4、6行(结果即:ww.baid)。

  第 10 行:~5 表示:把源变量src的值字符串从第5个索引位开始,取后面所有组成目标变量des的值(即:aidu.com.cn)。

  第 12 行:~-5 表示:把源变量src的值字符串从尾部开始取5个字符组成目标变量des的值(即:om.cn)。

  第 14 行:~0,-5 表示:把源变量src的值字符串从0索引位开始,至尾部数第五个索引位为止取出组成目标变量des的值(即:www.baidu.c)

  第 16 行:与第14行同理(结果即:w.baidu.com)。

最新文章

  1. ECharts 初识(基于MVC+jQuery+Angularjs实现的Demo)
  2. websocket的介绍
  3. 关于codeblock中一些常用的快捷键(搬运)
  4. Atitit Gaussian Blur 高斯模糊 的原理and实现and 用途
  5. spread语法解析与使用
  6. Java 开发 gRPC 服务和客户端
  7. IOS 图片转换二进制 二进制转换为图片
  8. POJ1177+线段树+扫描线
  9. ARM学习笔记5——程序状态寄存器
  10. hdoj 1789 Doing Homework again
  11. Android学习笔记(四)深入探讨Activity
  12. Ural 1079 - Maximum
  13. jg-table 过程2 ( jgTable )
  14. Antx简介(ali_PPT)
  15. ES6中数组的新方法
  16. 》》webpack打包成的文件
  17. servlet与ajax数据交换(json格式)
  18. char在C语言一个字节表示的数据范围
  19. appium 使用环境安装配置记录
  20. let,const,var

热门文章

  1. drf中的各种view,viewset
  2. C#实现RSA加密解密
  3. in __init__ self._traceback = tf_stack.extract_stack()的一个原因
  4. 4_PHP流程控制语句_1_条件控制语句
  5. 一个非常有趣的爬虫小练习带ocr识别的
  6. iOS - 直播流程,视频推流,视频拉流,简介,SMTP、RTMP、HLS、 PLPlayerKit
  7. 【i.MX6UL/i.MX6ULL开发常见问题】单独编译内核,uboot生成很多文件,具体用哪一个?
  8. vue学习(1) vue-cli 项目搭建
  9. 利用position absolute使div居中
  10. php通过curl发送XML数据,并获取XML数据