`
uule
  • 浏览: 6351937 次
  • 性别: Icon_minigender_1
  • 来自: 一片神奇的土地
社区版块
存档分类
最新评论

Set语法

 
阅读更多

简单用法:

set   

         //列出所有可用的变量

         //CMD里直接使用,可显示系统变量(环境变量)

         // 如展示JDK环境变量: set JAVA_HOME  (不用加%%)

 

set 变量名=变量值

        //设置变量值

        //被设定的变量以%变量名%引用

 

set 变量名=

        //取消变量

 

set 变量名

        //展示以变量名开头的所有变量 

 

set aaa = 5
set aaa    // 结果:aaa = 5
set %aaa%  // aaa = 5

echo.       //换行
echo aaa    // aaa
echo %aaa%  //结果:echo处于关闭状态
	   // 若为set /a aaa = 5,此时就会显示 5
	   
set /p s=aaa: 	
	//冒号后回车显示 aaa:  (=后的aaa:相当于提示)
	//输入5后,使用echo %s%,结果为5
	//使用set %s%,结果为“环境变量6没有定义”

 

::set "s=abc9"
set s=abc9

echo %s%
      :://abc9
      
set s
      :://显示s开头的所有变量
      ::// s=abc9 SystemDriver=C: ..     
      
echo !s! 
     ::// !s!
     :://加上setlocal enabledelayedexpansion后显示为“abc9”

set !s!
     :://环境变量!s!没有定义
     :://加上setlocal enabledelayedexpansion后显示为“环境变量abc9没有定义”

 

 

复杂用法:

SET variable=[string]

SET /P variable=[promptString]

SET /A expression

 

环境变量替换:

%PATH:str1=str2%

%PATH:~10,5%

%PATH:~-10%

%PATH:~0,-2%

  

 

详情:

SET /A expression  

                   //让SET可以支持数学符号进行加减等一些数学运算!

 

这里的例子请直接在CMD下拷贝命令运行,不需要保存为BAT!

 

set a=1+2
echo %a%  //输出1+2
 
set /a a=1+2
echo %a% //输出3
 
set /a var=1 + 1  //结果为2
                  //或者运行完后输入echo %var%,也是2
 
set /a var=2 * 2 乘法运算
set /a var=2 / 2 除法运算
 
set /a a=1+1,b=2+1,c=3+1    //结果为4
    //用echo %a% %b% %c%,结果为2 3 4

     

原变量进行加减操作

set /a var+=1   

                   //相当于set /a var = %var% + 1

                  //从0开始,结果为1

  

逻辑或取余操作符

逻辑或取余操作符,按照上面的使用方法会报错的

比如我们在CMD里输入set /a var=1 & 1 ,他并不会显示为1,而是报错

对于这样的"逻辑或取余操作符",我们需要把他们用双引号引起来

 

set /a var= 1 "&" 1 这样结果就显示出来了,其他逻辑或取余操作符用法

set /a var= 1 "%" 1   取模运算

set /a var= 2 "<<" 2 次方运算

set /a var"&=" 1   //等于set /a var = %var% "&" 1 注意引号

 

 

 

%PATH:str1=str2%

                  //把变量%PATH%的里的str1全部用str2替换

  

//把变量%a%里面的"."全部替换为"伤脑筋"

@echo off
set a=bbs.verybat.cn
echo 替换前的值: "%a%"
set var=%a:.=伤脑筋%
echo 替换后的值: "%var%"
pause

  

//把变量%a%的空格给替换掉

@echo off
set a= bbs.verybat.cn
echo 替换前的值: "%a%"
set var=%a: =%
echo 替换后的值: "%var%"
pause

  

 

%PATH:~10,5% 

                //字符串截取

 

@echo off
set a=bbs.verybat.cn
set var=%a:~1,2%
echo %var%
pause
 
 //结果:"bs"

  

分析set var=%a:~1,2%

       a要进行字符操作的变量

       "1"从变量"a"第几位开始显示

       "2"显示几位

   

和起来就是把变量a的值从第一位开始,把后两位赋予给变量var 

  

 

%PATH:~-10%

            //获取倒数后几位的值,从-1开始

 

把变量a倒数3位的值给变量VAR

@echo off
set a=bbs.verybat.cn
set var=%a:~-3%
echo %var%
pause

 结果.cn 

 

把变量a的从第3位开始后面全部的值给变量VAR

@echo off
set a=bbs.verybat.cn
set var=%a:~3%
echo %var%
pause

 结果.verybat.cn

 

 

%PATH:~0,-2%

@echo off
set a=bbs.verybat.cn
set var=%a:~0,-3%
echo %var%
pause

 结果bbs.verybat  少了".cn"

 

 

 set a=bat.bat&call echo %a:~1,-2%

//at.b

 



 

1、等号直接不要加空格

2、替换为空时不用写“”

3、获取日期:

%date:~4,4%     取年
%date:~9,2%     取月
%date:~12,2%   取日
%time:~0,2%     小时
%time:~3,2%     分钟
%time:~6,2%     秒
如:
rem   取系统日期及时间,同时将时间转换为8位(8:16:00-->08:16:00).
set   CurDate=%date:~0,10%
set   CurTime=%time%
set   hh=%CurTime:~0,2%
if   /i   %hh%   LSS   10   ( set   hh=0%CurTime:~1,1% )
set   mm=%CurTime:~3,2%
set   ss=%CurTime:~6,2%
set   CurDateTime=%CurDate%_%hh%:%mm%:%ss%
set   CurDateTime

 

  • 大小: 45.8 KB
分享到:
评论

相关推荐

    达梦数据库常用sql语句语法

    ### 达梦数据库常用SQL语句语法 #### 一、新建表 在达梦数据库中创建新表时,可以通过以下语法实现: ```sql CREATE TABLE [表名] ( [自动编号字段] INT IDENTITY(1,1) PRIMARY KEY, [字段1] NVARCHAR(50) ...

    mysql语法大全精讲(中文版)

    - SET 语法:设置系统变量。 - SHOW 语法:显示数据库信息,如表、变量等。 - 其他管理语句:涵盖各种数据库管理任务。 13.6 复制语句: - 主服务器和从服务器的控制语句:用于配置和管理MySQL复制,实现数据同步。...

    SQL常用 语句 语法 教程

    - SET 语法:设置服务器或会话变量。 - SHOW 语法:显示服务器状态、变量或表信息。 - 其他管理语句:涵盖数据库监控和配置。 13.6 复制语句: - 主从服务器的控制语句:用于配置和管理数据库复制。 13.7 用于...

    MySQL Delete From 删除数据.docx

    MySQL Delete From 删除数据 MySQL Delete From 语句用于删除数据表中的记录,DELETE 语句的基本...同时,使用 `mysql_affected_rows()` 函数可以获取删除的记录数,并使用 `UPDATE SET` 语法可以删除某个字段的数据。

    Vue.set 全局操作简单示例

    3. **Vue.set 语法**: ```javascript Vue.set(target, propertyName/index, value) ``` 其中 `target` 是要添加属性的目标对象,`propertyName/index` 是要添加的属性名或数组索引,`value` 是属性的值。 ####...

    MySQL replace into 用法.txt

    - 使用 SET 语法插入数据: ```sql REPLACE INTO employees SET id = 1, update_time = NOW(); ``` ### 性能考虑 - 当数据量大时,`REPLACE INTO` 可能会导致性能下降,因为它涉及到查找重复记录并删除的操作。...

    MySQL 5.1中文手冊

    13.5.3. SET语法 13.5.4. SHOW语法 13.5.5. 其它管理语句 13.6. 复制语句 13.6.1. 用于控制主服务器的SQL语句 13.6.2. 用于控制从服务器的SQL语句 13.7. 用于预处理语句的SQL语法 14. 插件式存储引擎体系结构 14.1. ...

    mysql官方中文参考手册

    13.5.3. SET语法 13.5.4. SHOW语法 13.5.5. 其它管理语句 13.6. 复制语句 13.6.1. 用于控制主服务器的SQL语句 13.6.2. 用于控制从服务器的SQL语句 13.7. 用于预处理语句的SQL语法 14. 插件式存储引擎体系结构 14.1. ...

    MySQL 5.1官方简体中文参考手册

    11.4.5. SET类型 11.5. 列类型存储需求 11.6. 选择正确的列类型 11.7. 使用来自其他数据库引擎的列类型 12. 函数和操作符 12.1. 操作符 12.1.1. 操作符优先级 12.1.2. 圆括号 12.1.3. 比较函数和操作符 12.1.4. 逻辑...

    MySQL 5.1参考手册中文版

    目录 前言 1. 一般信息 1.1. 关于本手册 1.2. 本手册采用的惯例 1.3. MySQL AB概述 1.4. MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. MySQL的的主要特性 1.4.3. MySQL稳定性 ...13.4.6. SET ...

    matlab函数语法格式

    8. set 函数语法格式: set 函数用于设置对象的属性值,语法格式为: set(object, 'property', value) set(object) 其中,object 是要设置属性值的对象,property 是要设置的属性名称,value 是要设置的属性值。 ...

    mysql5.1中文手册

    SET类型 11.5. 列类型存储需求 11.6. 选择正确的列类型 11.7. 使用来自其他数据库引擎的列类型 12. 函数和操作符 12.1. 操作符 12.1.1. 操作符优先级 12.1.2. 圆括号 12.1.3. 比较函数和...

    VIM语法高亮和SV支持

    在这个话题中,我们将聚焦于VIM中的“语法高亮”和“SystemVerilog支持”。 **1. VIM语法高亮** 语法高亮是VIM的一项重要特性,它能够帮助开发者更好地阅读和理解代码。通过为不同的代码元素(如关键字、变量、字符...

    Oracle和SqlServer语法区别

    Oracle和SqlServer语法区别 Oracle和SqlServer是两种流行的关系型数据库管理系统,它们之间存在着一些语法区别。了解这些区别对于开发者来说非常重要,因为它可以帮助他们更好地迁移到新的数据库管理系统。下面将...

    Mysql中FIND_IN_SET()和IN区别简析

    在MySQL数据库中,`FIND_IN_SET()` 和 `IN` 是两种不同的查询方法,它们在处理数据集时有不同的特性和应用场景。本文将对这两种方法进行详细对比,以帮助理解它们之间的差异。 `FIND_IN_SET()` 函数主要用于在一个...

    Atom-set-syntax,一个atom包,它创建了简单的命令选项板命令,用于设置当前文件的语法.zip

    Atom-set-syntax是一个专门为Atom文本编辑器设计的插件,它扩展了Atom的功能,使得用户能够更方便地管理和切换当前编辑文件的语言语法。Atom是一个由GitHub开发的免费、跨平台的文本编辑器,它利用Web技术如HTML、...

    java检查sql语法是否正确

    pstmt.setInt(1, 123); // 设置参数 pstmt.executeQuery(); // 如果SQL语法错误,会抛出SQLException } catch (SQLException e) { System.out.println("SQL语法错误: " + e.getMessage()); } ``` 另外,如果你的...

    sqlserver sql语法大全

    UPDATE [表名称] SET [列名称] = [新值] WHERE [条件]; ``` **删除数据:** ```sql DELETE FROM [表名称] WHERE [条件]; ``` #### 几个高级查询运算词 这些高级查询运算词可以帮助进行更复杂的查询操作。 - **...

    语法分析器 完美运行

    根据给定的信息,本文将对一个C语言编写的语法分析器进行详细的知识点解析,包括其功能、结构以及实现方式。 ### 一、语法分析器简介 #### 1.1 标题:“语法分析器 完美运行” 该标题表明这是一款能够完美运行的...

Global site tag (gtag.js) - Google Analytics