【1】set命令简介

  set,设置。

【2】set命令使用

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

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

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

  执行结果:

  命令解析:

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

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

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

  2. 变量设置值。

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

 1 @echo off2 set var=呵呵~我是变量var的值3 echo %var%4 set var=abcdefg5 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 off2 rem +运算符3 set /a var=1+14 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 off2 set src= China I love you3 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 off2 set src=www.baidu.com.cn3 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)。

批处理命令——set - kaizen - 博客园 (cnblogs.com)

批处理命令——set相关推荐

  1. 批处理命令——goto 和 :

    谈起goto,相信大家应该想到的是面向过程编程.其实,这就相当于当有人向你谈起class,意味着你就懂得面向对象编程.如果你不懂,那么你们的沟通将会很困难.不懂我说的啥意思吗?请参见曾经分享王路的一篇 ...

  2. Windbg学习 (0x0012) 命令-批处理命令程序

    Windbg学习 (0x0012) 命令-批处理命令 转载于:https://www.cnblogs.com/ywnwa417/p/5678344.html

  3. cmd批处理命令大全1

    cmd和批处理命令大全 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息.如果没有任何参数,echo 命令将显示当前回显设置. 语法 echo [{on|off}] [message] Sa ...

  4. (完全解决)Windows如何使用批处理命令进行SSH连接并自动输入密码

    找了很多方法,有说用 密钥的 sshpass工具的 用SSH客户端连接工具 脚本的 我很久之前试过用自己的虚拟机Linux SSH连接服务器Linux,使用过密钥,确实方便,但是没有试过Windows ...

  5. 常用批处理命令总结3之Find和FindStr

    原文:常用批处理命令总结3之Find和FindStr find 作用:从文件中收索字符串 格式:find 参数 "字符串" 路径\文件名 参数: /V 显示所有未包含指定字符串的行 ...

  6. C# 动态执行批处理命令

    C# 动态执行一系列控制台命令,并允许实时显示出来执行结果时,可以使用下面的函数.可以达到的效果为: 持续的输入:控制台可以持续使用输入流写入后续的命令 大数据量的输出:不会因为大数据量的输出导致程序 ...

  7. 用CreateProcess()在MFC中执行批处理命令

    //封装CreateProcess BOOL CFXNAdhocDemoDlg::ProcessCmd(LPTSTR cmd) {     ASSERT(cmd!=NULL); STARTUPINFO ...

  8. BAT 批处理命令 - 解决cmd控制台中文乱码问题实例演示

    BAT 批处理命令支持的是 ANSI 编码,如果用默认的 UTF-8 编码会报错.我们只要把编码改成 ANSI 就行了. 下图是我写了一个有问题的代码.[如果还能发现其它问题可以评论区留言哦!考验一下 ...

  9. 批处理命令 / rem :: :

    @time 2019-07-08 @author Ruo_Xiao 1.rem (1)批处理命令,相当于把 rem 后面的内容清空. (2)必须单独设置为一行,同样受回显的困扰,需要使用 @echo ...

  10. cmd批处理命令与变量(下)

    批处理命令与变量 1:for命令及变量 基本格式: FOR /参数 %variable IN (set) DO command [command_parameters] %variable:指定一个单 ...

最新文章

  1. Android性能优化——腾讯、字节、阿里、百度、网易等互联网公司项目实战+案例分析(附PDF)
  2. 阿里开发者们的第18个感悟:每次困难出现时,就是成长的机会出现了
  3. ARM9学习笔记之——MMU
  4. c++ map 修改value_干货 | 名企高频考点如何使用map统计字符串各个字符出现的次数...
  5. TensorFlow学习笔记(十七)tf.nn.conv2d
  6. 同学你好,听说你想学习做硬件?
  7. 百度SEO站群小旋风蜘蛛池站群X8模板
  8. kali安装docker和portainer
  9. CPU是如何处理指令的
  10. WPF 学习笔记 路由事件
  11. 如何在网页中每小时更新一次数据?
  12. html 发送ping帧,HTML5:ping属性之死亡ping与隐私追踪
  13. python爬虫入门实例
  14. bat 脚本(批处理)操作注册表
  15. dtm源码编译安装-运行客户端demo
  16. win10去掉快捷方式小箭头_快捷方式小箭头很烦人 一招教你取消
  17. (一)android为什么需要recovery升级?
  18. 水龙吟·为韩南涧尚书寿甲辰岁
  19. Java Rest path_java – 具有多种类型的REST PathParam
  20. python多用户B2C商城系统毕业设计开题报告

热门文章

  1. 回收站删除的文件怎么恢复?恢复的方法超简单!
  2. 关于CommandTimeOut 【转】
  3. intellij java web_IntelliJ IDEA 搭建 Java web
  4. 十次方:贺繁星元宋分手,芒果TV“服务器”为什么崩了?
  5. format常见用法
  6. Ant命令详解和build.xml
  7. vue3中组件的v-model使用及详解
  8. 注意这两点,就可以提升企业短信验证码的发送速度
  9. Linux中在终端打开图形界面的文件夹的方法
  10. visual studio中的【console.WriteLine()】日志没有打印出来