位置: 编程技术 - 正文

DOS下如何声明变量(定义变量)(dos命令怎么写)

发布时间:2024-02-27

dos定义变量 DOS下也只有环境变量可以用 SET [variable=[string]] variable 指定环境变量名。 string 指定要指派给变量的一系列字符串。 要显示当前环境变量,键入不带参数的 SET。 如果命令扩展被启用,SET 会如下改变: 可仅用一个变量激活 SET 命令,等号或值不显示所有前缀匹配 SET 命令已使用的名称的所有变量的值。例如: SET P 会显示所有以字母 P 打头的变量 如果在当前环境中找不到该变量名称,SET 命令将把 ERRORLEVEL 设置成 1。 SET 命令不允许变量名含有等号。 在 SET 命令中添加了两个新命令行开关: SET /A expression SET /P variable=[promptString] /A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式 评估器很简单并以递减的优先权顺序支持下列操作: () - 分组 ! ~ - - 一元运算符 * / % - 算数运算符 + - - 算数运算符 << >> - 逻辑移位 & - 按位“与” ^ - 按位“异” | - 按位“或” = *= /= %= += -= - 赋值 &= ^= |= <<= >>= , - 表达式分隔符 如果您使用任何逻辑或取余操作符, 您需要将表达式字符串用 引号扩起来。在表达式中的任何非数字字符串键作为环境变量 名称,这些环境变量名称的值已在使用前转换成数字。如果指定 名称,这些环境变量名称的值已在使用前转换成数字。如果指定 了一个环境变量名称,但未在当前环境中定义,那么值将被定为 零。这使您可以使用环境变量值做计算而不用键入那些 % 符号 来得到它们的值。如果 SET /A 在命令脚本外的命令行执行的, 那么它显示该表达式的最后值。该分配的操作符在分配的操作符 左边需要一个环境变量名称。除十六进制有 0x 前缀,八进制 有 0 前缀的,数字值为十进位数字。因此,0x 与 和 相同。请注意八进制公式可能很容易搞混: 和 是无效的数字, 因为 8 和 9 不是有效的八进制位数。 /P 命令行开关允许将变量数值设成用户输入的一行输入。读取输入 行之前,显示指定的 promptString。promptString 可以是空的。 环境变量替换已如下增强: %PATH:str1=str2% 会扩展 PATH 环境变量,用 "str2" 代替扩展结果中的每个 "str1"。 要有效地从扩展结果中删除所有的 "str1","str2" 可以是空的。 "str1" 可以以星号打头;在这种情况下,"str1" 会从扩展结果的 开始到 str1 剩余部分第一次出现的地方,都一直保持相配。 也可以为扩展名指定子字符串。 %PATH:~,5% 会扩展 PATH 环境变量,然后只使用在扩展结果中从第 个(偏 移量 )字符开始的五个字符。如果没有指定长度,则采用默认 值,即变量数值的余数。如果两个数字(偏移量和长度)都是负数, 使用的数字则是环境变量数值长度加上指定的偏移量或长度。 %PATH:~-% 会提取 PATH 变量的最后十个字符。 %PATH:~0,-2% 会提取 PATH 变量的所有字符,除了最后两个。 终于添加了延迟环境变量扩充的支持。该支持总是按默认值被 停用,但也可以通过 CMD.EXE 的 /V 命令行开关而被启用/停用。 请参阅 CMD /? 考虑到读取一行文本时所遇到的目前扩充的限制时,延迟环境 变量扩充是很有用的,而不是执行的时候。以下例子说明直接 变量扩充的问题:

不会显示消息,因为在读到第一个 IF 语句时,BOTH IF 语句中 的 %VAR% 会被代替;原因是: 它包含 IF 的文体,IF 是一个 复合语句。所以,复合语句中的 IF 实际上是在比较 "before" 和 "after",这两者永远不会相等。同样,以下这个例子也不会达到 预期效果:

原因是,它不会在目前的目录中建立一个文件列表,而只是将 LIST 变量设成找到的最后一个文件。这也是因为 %LIST% 在 FOR 语句被读取时,只被扩充了一次;而且,那时的 LIST 变量 是空的。因此,我们真正执行的 FOR 循环是: for %i in (*) do set LIST= %i 这个循环继续将 LIST 设成找到的最后一个文件。 延迟环境变量扩充允许您使用一个不同的字符(惊叹号)在执行 时间扩充环境变量。如果延迟的变量扩充被启用,可以将上面 例子写成以下所示,以达到预期效果: set VAR=before if "%VAR%" == "before" ( set VAR=after if "!VAR!" == "after" @echo If you see this, it worked ) set LIST= for %i in (*) do set LIST=!LIST! %i echo %LIST% 如果命令扩展被启用,有几个动态环境变量可以被扩展,但 不会出现在 SET 显示的变量列表中。每次变量数值被扩展时, 这些变量数值都会被动态计算。如果用户用这些名称中任何 一个定义变量,那个定义会替代下面描述的动态定义: %CD% - 扩展到当前目录字符串。 set LIST= for %i in (*) do set LIST=!LIST! %i echo %LIST% 如果命令扩展被启用,有几个动态环境变量可以被扩展,但 不会出现在 SET 显示的变量列表中。每次变量数值被扩展时, 这些变量数值都会被动态计算。如果用户用这些名称中任何 一个定义变量,那个定义会替代下面描述的动态定义: %CD% - 扩展到当前目录字符串。 %DATE% - 用跟 DATE 命令同样的格式扩展到当前日期。 %TIME% - 用跟 TIME 命令同样的格式扩展到当前时间。 %RANDOM% - 扩展到 0 和 之间的任意十进制数字。 %ERRORLEVEL% - 扩展到当前 ERRORLEVEL 数值。 %CMDEXTVERSION% - 扩展到当前命令处理器扩展版本号。 %CMDCMDLINE% - 扩展到调用命令处理器的原始命令行。附一个判断示例代码:

推荐整理分享DOS下如何声明变量(定义变量)(dos命令怎么写),希望有所帮助,仅作参考,欢迎阅读内容。

DOS下如何声明变量(定义变量)(dos命令怎么写)

文章相关热门搜索词:dos命令改变颜色,dos文件改名命令,dos命令生成文件,dos变量用法,dos变量用法,dos变量用法,dos变量用法,写出dos命令的一般格式,内容如对您有帮助,希望把文章链接给更多的朋友!

dos变量定义和引用方法 变量定义和引用1.MS-DOSshell对变量、命令、命令行参数的大小写区分吗?不区分2.如何定义一个(环境)变量?SETvariable=[value]如果value是空字符串,则取

bat得到文件大小的代码 今天想复制一些文件,需要先判断文件的大小,小的肯定是有问题的不需要复制,经过大量测试终于找到了比较好的方法,需要的朋友可以参考下先来

DOS中的pause命令简介 在DOS命令中有一个命令是pause,它的作用是输出提示信息"Pressanykeytocontinue...,然后用户随意敲一个键后程序继续运行。pause它会提示请按任意键继续...

标签: dos命令怎么写

本文链接地址:https://www.jiuchutong.com/biancheng/375115.html 转载请保留说明!

上一篇:dos批处理文件中的变量小结(dos命令批处理文件)

下一篇:dos变量定义和引用方法(dos判断变量是否为空)

  • 金税三期反映出来的是前几年的问题
  • 出口免税收入的计税依据
  • 递延所得税什么时候确认
  • 预期信用损失率计算公式
  • 固定资产怎么确定是否减值
  • 如何确定固定资产的原始价值
  • 计算企业所得税可以扣除的项目有
  • 固定资产后续支出可以计入哪些费用
  • 怎么知道个税是退税还是补税
  • 因技术原因淘汰的财产形成的损失需备案吗
  • 企业安全生产费用提取标准 最新
  • 工会的会费收入如何记账
  • 向银行贷款买车 绿本要给银行吗
  • 转让土地使用权一般计税方法
  • 提前给货款计入什么科目
  • 人力资源公司劳务派遣怎么收费
  • 母子公司可以开具资金占用费
  • 货物运输代理服务税率
  • 公司改名字麻烦不
  • 建筑安装税务分类编码为多少?
  • 同程旅行酒店预订
  • 企业房租收入营改增
  • 税收思想
  • 房地产企业土地增值税清算案例
  • 红字冲回上月收入
  • 印花税减半优惠政策2019
  • 快递公司怎么纳入社保
  • 增值税普通发票税率
  • 汽车维修发票是几个点
  • 个人捐赠住房
  • 出口茶叶需要什么资质
  • 零售价法会计分录
  • 抵债资产会计核算办法
  • 2021发票勾选认证
  • 转让投资性房地产收到售价款
  • tp link无线路由器设置
  • 处置固定资产简易计税怎么申报
  • win10商店在哪打开
  • 外币账户收到应收账款
  • 政府性基金收入是政府非税收入吗
  • 对于在某一时点履行义务,企业应当在
  • 采购原材料凭证未到达
  • 小企业会计科目表
  • 非盈利组织盈利怎么办
  • 应收票据年末计息的分录
  • php实现截取中文字符
  • thinkphp入口文件
  • vue3定义全局变量
  • 命令default
  • php ajax 实现
  • 申报水利基金的流程
  • python字典遍历key
  • 详解PostgreSQL 语法中关键字的添加
  • 商品流通企业存货计价方法
  • 个税系统中的离职怎么填
  • 小规模企业增值税税收优惠政策2023
  • 中小企业应交税费怎么算
  • 中小企业投标费怎么算
  • 进口设备 退税
  • 运费少给怎么办
  • 预付电费收到发票报销单怎么写
  • 员工拿发票报销怎么做账
  • 人工费没有发票怎么办
  • 个人经纪代理服务
  • 装修公司完工交付文案
  • 总分类账户与明细分类账户是对账户按照其
  • 固定资产盘点表excel
  • 会计计算工资的步骤流程
  • SQL Server Bulk Insert 只需要部分字段时的方法
  • fedora怎么样
  • linux系统开机黑屏啥也没有
  • linux安装syslog
  • windows 10 升级
  • cocos creator特效制作
  • css中清除浮动的方法
  • javascript 语言精粹(修订版)
  • js下拉菜单的制作方法
  • 12366纳税服务平台人工时间
  • 统一社会信用代码证
  • 增值税电子普通发票可以抵扣吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号