,,批处理BAT脚本中set命令的使用详解(批处理之家Batcher)

,,批处理BAT脚本中set命令的使用详解(批处理之家Batcher)

12处理乘除运算时,结果少于两位小数——结果后加0。

三。证词

在编写这段代码的过程中,我深刻感受到了批处理在数值上的不足和缺陷。

这是我写问题的时候没想到的。没想到要考虑的问题各方面都很复杂。

杂七杂八的,我在困难面前几次想退缩,但是为了给你一个满意的答案,我还是

勇敢的写下来。好像批量处理只适合做自己适合做的事,试图人为强加他人。

功能真的很费力。

等号右侧的变量可以省略百分号

批量功能:大数的加减乘除,周期时间计算,数字排序,十进制转换等。

合理的位运算可以简化代码,提高效率。

八进制和十六进制转换成十进制很简单

https://www.jb51.net/article/222968.htm

https://www.jb51.net/article/222971.htm

对于超大数和浮点数的计算,BAT调用VBS或PowerShell是一个相对简单的解决方案。

截取日期和时间后进行set /a计算时,08和09将被视为非法八进制数。请参考:

https://www.jb51.net/article/222980.htm

https://www.jb51.net/article/222991.htm

目录

原始字符串拦截集sub=%str:~x,y%结果

截断第一至第三个字符。

设置str=12345

set sub=% str:~ 0.3%

截断第二个到最后一个字符。

设置str=12345

set sub=%str:~1%

截取倒数第四个字符。

设置str=12345

set sub=% str:~-4.3%

set sub=%str:~-4,-1%

截断最后两个字符

设置str=12345

set sub=%str:~-2%

解释

当x为正数时,表示从左向右裁剪;当x为负时,表示从右向左剪裁。

当y为正时,表示要截取的字符串长度;当y为负时,表示要丢弃的最后几个字符的长度。

当y前的逗号不存在时,表示x 1字符及其后的所有字符都被截取。

一、使用 set 命令进行赋值

set StrNew=% StrOld:SubOld=SubNew %

将字符串bbs替换为www

set StrOld=http://bbs.bathome.net

set StrNew=%StrOld:bbs=www%

删除字符串bbs

set StrOld=http://bbs.bathome.net

set StrNew=%StrOld:bbs=%

删除第一个字符T及其左侧的所有字符(使用通配符*)

set StrOld=http://bbs.bathome.net

set StrNew=%StrOld:*t=%

要替换的子字符串不区分大小写(该特性可用于将字母转换为大小写)。

@关闭回声

setlocal enabledelayedexpansion

REM全部转换成大写字母。

设置str=http://bbs。BATHOME.net

设置=A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

对于%%i in (%up%)做(

set str=!字符串:%%i=%%i!)

回声%str%

中止

将所有字母转换成小写字母

@关闭回声

setlocal enabledelayedexpansion

REM全部转换成小写字母

设置str=http://bbs。BATHOME.net

设置低电平=a b c d e f g h i j k l m n o p q r s t u v w x y z

对于%%i in (%low%)做(

set str=!字符串:%%i=%%i!)

回声%str%

中止

1、等号两边不要有空格

UNIX/Linux Shell支持通过重定向或for语句的方式对Windows BAT进行命令替换。

packet loss=` ping-c 4 127 . 0 . 0 . 1 | grep ' % ' '

echo $PacketLoss

蝙蝠

@关闭回声

REM使用重定向将命令结果(单个字符串)赋给变量。

' ping 127 . 0 . 0 . 1 | findstr ' % % ' ' % temp % \ ping . txt '

set/p packet loss=' % temp % \ ping . txt '

回声百分比数据包丢失百分比

中止

packet loss=$(ping-c 4 127 . 0 . 0 . 1 | grep ' % ')

echo $PacketLoss

蝙蝠

@关闭回声

REM使用for语句将命令结果(单个字符串)赋给变量。

for/f ' delims=' % % I in(' ping 127 . 0 . 0 . 1 ^| findstr ' % % ' ')do(

set“packet loss=% % I”

)

回声百分比数据包丢失百分比

中止

2、变量值包含特殊字符需用双引号

直接执行set命令来显示系统环境变量。

命令集xxx可以显示所有以xxx开头的变量。

结果按变量名排序。

C:\set xxx1=A

C:\set xxx3=C

C:\set xxx2=B

c:\设置xxx

xxx1=A

xxx2=B

xxx3=C

使用“排序”功能完成代码演示

@关闭回声

for % % I in(a . txt c . txt b . txt e . txt)do(

设置#%%i=%%i

)

for/f ' tokens=2 delims==' % % I in(' set # ')do(

回声%%i

)

中止

解决实际问题中的应用

https://www.jb51.net/article/223002.htm

https://www.jb51.net/article/223004.htm

https://www.jb51.net/article/223007.htm

关于set命令在BAT批处理脚本(Batcher,批处理之家)中的使用的详细解释,本文到此结束。要了解更多相关的set命令内容,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • word文档无法编辑是怎么回事-
  • 华为手机怎么设置返回键(华为手机下面的三个按键设置方法)
  • lumia950怎么样(Lumia950体验分享)
  • otg连接是什么意思(OTG连接手机方法)
  • 笔记本触摸板怎么右键(笔记本电脑触控板手势操作设置)
  • 真我x7怎么样(realme X7 系列体验)
  • 苹果的A16处理器有多强(苹果的A16处理器的介绍)
  • 小米互传怎么用(小米手机的连接与共享教程)
  • 怎么设置电脑桌面图标自动对齐 设置电脑桌面自动整理图标的方法
  • 宽带错误651最简单解决方法(处理宽带错误651的措施)
  • 大学生手机有什么推荐(大学生换手机攻略)
  • 天玑1100和骁龙778g哪个好(骁龙778G、天玑900、天玑1100购选建议)
  • yum update 升级报错的解决办法
  • Windows10禁用屏保教程
  • 连接wifi显示无互联网连接怎么办(无线连上了却不能上网处理绝招)
  • 留言与评论(共有 条评论)
       
    验证码: