zoukankan      html  css  js  c++  java
  • bat的变量与命令set的用法

    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不能用在复合语句里面比如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 变量的除前两个的所有字符
    %VAR:~-2%             会提取VAR 变量的最后两个
    %VAR:~2,5%           提取从第2个字符开始的5个字符

     
  • 相关阅读:
    Docker简介,安装,配置
    Centos7给 root 账户开通ssh权限
    [转载]Hyper-v 安装CentOS 7
    软件开发_六大原则
    php函数名后冒号(:)+数据类型(返回值类型限制/php新特性)
    MySQL--事务介绍
    MySQL存储引擎
    leetcode刷题笔记300题 最长上升子序列
    leetcode刷题笔记299题 猜数字游戏
    **leetcode刷题笔记四 两个有序序列的中位数**
  • 原文地址:https://www.cnblogs.com/longdidi/p/3137694.html
Copyright © 2011-2022 走看看