首页
windows
驱动
往windows镜像中添加驱动
集成驱动与补丁到Windows7的ISO文件
禁用Win系统自动更新驱动
Windows Service 中安装网卡驱动
office
excel中的函数
Win故障处理
win10文件夹右键菜单转圈圈假死
内存占用很高
激活许可
kms激活
office删除授权
KMS38
MAS开源激活脚本
解除网页禁止复制
封装win10系统
封装系统工具
DISM命令常见用法
封装win10-U盘安装系统
封装win10-U盘安装系统2--sysprep封装后的自动化
Win镜像文件iso添加补丁包
WDS+MDT自动装机
ISO镜像中的install.esd转为install.wim
Win实用工具
微软官方-网络数据收集NetMon
微软官方工具
Win下查看文件被哪个进程占用
Everything 的文件索引、HTTP共享
文件转换器File Converter
恢复电脑上删除的文件
查看桌面弹窗广告是哪个应用-ProcessExplorer
Win-网络
获取网卡的接口号
Win下查看端口被哪个进程占用
方便的编辑切换hosts文件OpenArk
win10中用curl或PowerShell调用HTTP post 接口
从windows获取连接的USB设备列表_python或cmd
检测硬件信息
显卡压力测试
bat压缩文件夹并备份到smb共享
bat脚本中使用WinSCP命令备份linux中文件
WinScp命令行下载脚本(示例代码)
Win10下用系统自带SCP命令免密码上传、下载centos服务器上的文件
Win笔记
win10查看设备序列号、硬盘序列号、硬盘ID
Windows 系统下 MD5 值计算方法
Windows 关闭显示命令
Win中查看进程名称、使用的端口
Win10命令行中查看wifi密码
查看、杀掉进程
用CMD弹出提示框
Windows软件静默安装
WDS跨网段配置_网络
Windows修改静态路由表和跃点数
bat脚本映射共享文件夹为盘符
win中备份文件到阿里对象存储 OSS
Windows管理工具命令行Wmic
Win10自动修复失败,你的电脑未正确启动
TCP端口ping命令_psping
bat脚本
BAT批处理中的字符串处理
获取本机ip和ping网关
统计win共享文件夹内哪些用户有权限
bat脚本——for循环用法
BAT脚本之判断文件是否存在
bat笔记
bat方式实现企业微信群机器人告警
bat脚本检测USB设备掉线时企微告警
Bat脚本日期时间获取
Win中检查某一进程是否存在
if和errorlevel
goto和call
bat中修改计算机名为sn号
批处理- 内置环境变量ERRORLEVEL
bat修改host文件
本文档由 内网文摘 发布,转载请注明出处
-
+
首页
bat脚本——for循环用法
Windows bat脚本的for语句基本形态如下: ```bash 在cmd窗口中:for %I in (command1) do command2 在批处理文件中:for %%I in (command1) do command2 ``` 之所以要区分cmd窗口和批处理文件两种环境,是因为在这两种环境下,命令语句表现出来的行为虽然基本一样,但是在细节上还是稍有不同,最明显的一个差异就是:在cmd窗口中,for之后的形式变量I必须使用单百分号引用,即%I;而在批处理文件中,引用形式变量I必须使用双百分号,即%%I。为了方便起见,若不是特别强调,以下的讲解都以批处理文件环境为例。 我们先来看一下for语句的基本要素都有些什么: for、in和do是for语句的关键字,它们三个缺一不可; %%I是for语句中对形式变量的引用,即使变量l在do后的语句中没有参与语句的执行,也是必须出现的; in之后,do之前的括号不能省略; command1表示字符串或变量,command2表示字符串、变量或命令语句; 下面来看一个Windows bat脚本的demo(记为demo1): ```bash @echo off for %%I in (ABC) do echo %%I pause ``` ABC 对批处理文件的for循环就是这样简单,下面来看看for语句的注意事项,并运行更复杂的for循环实例。 1. for语句的形式变量I,可以换成26个字母中的任意一个,这些字母会区分大小写,也就是说,%%I和%%i会被认为不是同一个变量;形式变量I还可以换成其他的字符,但是,为了不与批处理中的%0~%9这10个形式变量发生冲突,请不要随意把%%I替换为%%0~%%9中的任意一个; 2. in和do之间的command1表示的字符串或变量可以是一个,也可以是多个,每一个字符串或变量,我们称之为一个元素,每个元素之间,用空格键、跳格键、逗号、分号或等号分隔; 3. `for语句依次提取command1中的每一个元素,把它的值赋予形式变量I,带到do后的command2中参与命令的执行;并且每次只提取一个元素,然后执行一次do后的命令语句,而无论这个元素是否被带到command2中参与了command2的运行;当执行完一次do后的语句之后,再提取command1中的下一个元素,再执行一次command2,如此循环,直到command1中的所有元素都已经被提取完毕,该for语句才宣告执行结束。` 有了以上的基础,我们再来看下面这个例子,这个例子修改了demo1中的部分内容(记为demo2),结果将大不一样: ```bash @echo off for %%I in (A,B,C) do echo %%I pause ``` A B C 如果把 bbs.bathome.cn 这个字符串中的点号换为空格、跳格或等号,执行结果将和demo2的执行结果别无二致。 现在,来分析一下demo2代码中for语句的执行过程: 1. for语句以逗号为分隔符,把 A,B,C 这个字符串切分成三个元素:A、B和C,由此决定了do后的语句将会被执行3次; 2. `第一次执行过程是这样的:先把 bbs 这个字符串作为形式变量I的值,带入do后的语句中加以执行,也就是执行 echo %%I 语句,此时的I值为A,因此,第一次执行的结果,将会在屏幕上显示A这个字符串;第二次执行和第一次执行的过程是一样的,只不过此时I的值已经被替换为command1中的第二个元素了,也就是 B 这个字符串;如此循环,当第三次echo执行完毕之后,整条for语句才算执行完毕,此时,将执行下一条语句,也就是pause命令。` 高级用法: 1)搜索当前目录下有哪些文件? ```bash @echo off for %%i in (*.*) do echo "%%i" pause ``` 2)搜索当前目录下所有的文本文件? ```bash @echo off for %%i in (*.txt) do echo "%%i" pause ``` 原文链接:https://blog.csdn.net/u013514928/article/details/79629937
local
2021年9月16日 18:44
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 LocalNetwork
LocalNetwork
是由mrdoc开源
LocalNetwork.cn
修改的在线文档系统,作为个人和小型团队的云笔记、文档和知识库管理工具。
如果此文档给你或你的团队带来了帮助,欢迎支持作者持续投入精力更新和维护!内网文摘 & LocalNetwork
>>>主页
logo
logo
下载Markdown文件
分享
链接
类型
密码
更新密码