for 续1
--------siwuxie095
/f
是四个参数中最复杂的一个,非常强大,不过其复杂性
令人望而生畏
/f 用途:
能够对字符串进行操作,也能够对命令的返回值进行操作,
还可以访问硬盘上的 ASCII 码文件,比如 txt 文档等
常用于文本信息编辑,如查询、提取、替换等
格式:
FOR /F ["options"] %%variable IN (file-set) DO command
[command-parameters] 文件名
file-set 不用引号(如果文件名含有空格时,就需要借助 usebackq 了)
FOR /F ["options"] %%variable IN ("string") DO command
[command-parameters] 字符串
string 要用双引号
FOR /F ["options"] %%variable IN ('command') DO command
[command-parameters] 命令
command 要用单引号
注意:带引号的字符串
"options"
包括一个或多个指定不同解析选项的关键字:
eol=c、skip=n、delims=xxx、tokens=x,y,m-n、usebackq
如:当前目录下有一个
test.txt
文件(格式改为ANSI,否则乱码)
|
@echo off for /f %%i in (test.txt) do pause |
运行一览:一下子显示文件的所有内容

如果要逐行显示:
|
@echo off for /f %%i in (test.txt) do pause |
解析选项关键字详解:
(一)eol=c 忽略(隐藏、屏蔽)所有以字符是 C 开头的行
格式:
FOR /F "eol=c" %%I IN (Command1) DO Command2
"指定行尾字符(仅一个字符)",来源于帮助文件,尚不清楚其含义
eol=
默认情况下屏蔽冒号开头的行(无论是中文冒号还是英文冒号,都会被屏蔽掉)
但冒号本身不会被屏蔽,还是会被显示出来
注意:这里被处理的文本里的冒号和后面的文字字符必须有空格隔开,
否则无法对文本进行屏蔽
eol=c 格式:
如:文本
静夜思.txt 的内容:

要略掉第三行,如下:
|
@echo off for /f "eol=举" pause>nul |
sublime中:

运行一览:

上面的
test.bat 和 静夜思.txt 实际上在同一目录下,所以
没有指出
静夜思.txt 的路径,test.bat 自动在当前目录下
搜索,若没有
静夜思.txt,显示找不到文件
若
test.bat 在F盘,静夜思.txt 在D盘,则需要指明路径:
|
@echo off for /f "eol=举" pause >nul |
eol=c 格式,不能屏蔽以空格开头的行
如:文本
春夜喜雨.txt 的内容:

代码:
|
@echo off rem 等号 = 后面一个空格 for /f "eol= " pause>nul |
sublime中:

运行一览:将原文本前导空格都屏蔽掉,其他全部输出

eol=c 格式,空格不在行首,能屏蔽掉该行空格以后的内容
如:文本
念奴娇.txt 的内容:

代码:
|
@echo off rem 等号 = 后面一个空格 for /f "eol= " pause>nul |
sublime中:

运行一览:所有空格以后的内容都被屏蔽掉

eol=c 格式, c 字符不是某一行的开头字符,就不能屏蔽掉该行
同样使用上面的
春夜喜雨.txt:
|
@echo off for /f "eol=风" pause>nul |
运行一览:将原文本前导空格都屏蔽掉,其他全部输出

eol= 格式
如:春夜喜雨.txt 改为:
(加的冒号中英文格式均可,和后面的文字之间要隔空格,
否则无法屏蔽)

代码:
|
@echo off rem 等号 = 后面无空格,直接用引号 for /f "eol=" pause>nul |
sublime中:

运行一览:屏蔽并没有屏蔽冒号本身

若要屏蔽冒号:
|
@echo off rem 等号 = 后面加一个冒号,格式和诗中所加冒号一致 rem 这里均采用的是中文冒号 for /f "eol=:" pause>nul |
sublime中:

运行一览:所有以冒号开头的行都被屏蔽掉,包括冒号本身

【made by siwuxie095】
for 续1的更多相关文章
- .Net Core MVC 网站开发(Ninesky) 2.3、项目架构调整(续)-使用配置文件动态注入
上次实现了依赖注入,但是web项目必须要引用业务逻辑层和数据存储层的实现,项目解耦并不完全:另一方面,要同时注入业务逻辑层和数据访问层,注入的服务直接写在Startup中显得非常臃肿.理想的方式是,w ...
- [.NET] C# 知识回顾 - 委托 delegate (续)
C# 知识回顾 - 委托 delegate (续) [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6046171.html 序 上篇<C# 知识回 ...
- iOS 开发者账号到期续费流程
1.登录developer.apple.com,查看到期时间 2.到期提醒通知,点击Renew Membership续费(一般提前一个月提醒续费) 3.个人开发者账号续费需要支付 688人民币/年(9 ...
- 微信公众号开发系列教程一(调试环境部署续:vs远程调试)
http://www.cnblogs.com/zskbll/p/4080328.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...
- CI-持续集成(1)-软件工业“流水线”概述
CI-持续集成(1)-软件工业“流水线”概述 1 概述 持续集成(Continuous integration)是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次, ...
- 分享我基于NPOI+ExcelReport实现的导入与导出EXCEL类库:ExcelUtility (续3篇-导出时动态生成多Sheet EXCEL)
ExcelUtility 类库经过我(梦在旅途)近期不断的优化与新增功能,现已基本趋向稳定,功能上也基本可以满足绝大部份的EXCEL导出需求,该类库已在我们公司大型ERP系统全面使用,效果不错,今天应 ...
- [译]Godot系列教程三 - 场景实例化(续)
场景实例化(续) 要点 场景实例化带来很多便利的用法,总体来说有: 将场景细分,更便于管理 相对于某些引擎中的Prefab组件更灵活,并且在许多方面更强大 是一种设计更复杂的游戏流程甚至UI的方式 这 ...
- 【小白的CFD之旅】13 敲门实例【续3】
接上文[小白的CFD之旅]12 敲门实例[续2] 4 Results4.1 计算监测图形4.2 Graphics4.2.1 壁面温度分布4.2.2 创建截面4.2.3 显示截面物理量4.2.4 Pat ...
- 【小白的CFD之旅】12 敲门实例【续2】
接上文[小白的CFD之旅]敲门实例[续] 主要内容 3 Solution3.1 Solution Methods3.2 Solution Controls3.3 Monitors3.4 Report ...
- jquery实现简单瀑布流布局(续):图片懒加载
# jquery实现简单瀑布流布局(续):图片懒加载 这篇文章是jquery实现简单瀑布流布局思想的小小扩展.代码基于前作的代码继续完善. 图片懒加载就是符合某些条件时才触发图片的加载.最常见的具体表 ...
随机推荐
- Servlet不是线程安全的。
要解释为什么Servlet为什么不是线程安全的,需要了解Servlet容器(即Tomcat)使如何响应HTTP请求的. 当Tomcat接收到Client的HTTP请求时,Tomcat从线程池中取出一个 ...
- Zabbix proxy 3.2安装部署
zabbix proxy 前提环境: CentOS 6 LNMP(php) 版本:Zabbix-3.2.3 proxy安装 yum install -y net-snmp \ net-snmp-dev ...
- 使用GitHub进行项目创建——初级,非指令版,纯软件操作
主要步骤如下: 1.申请一个GitHub账号,官网按照步骤来就行 2.下载一个GitHub DeskTop(https://desktop.github.com/),命令什么的以后说不定会写把 3.创 ...
- Codeforces 148B: Escape
题目链接:http://codeforces.com/problemset/problem/148/B 题意:公主从龙的洞穴中逃跑,公主的速度为vp,龙的速度为vd,在公主逃跑时间t时,龙发现公主逃跑 ...
- flask第二十七篇——九九乘法表
请关注公众号:自动化测试实战 九九乘法表其实很容易: <table border="1"> <tbody> {% for x in range(1, 10) ...
- 在Flask中使用Celery的最佳实践
写在前面 本最佳实践是基于作者有限的经验,欢迎大家共同讨论,可以持续维护此最佳实践.另本文中所使用的环境为Mac&Ubuntu环境,软件版本如下: Celery (4.1.0) Flask ( ...
- 把CDLinux制作成U盘启动
因为用下了CDlinux,本来想在虚拟机上运行的.发现虚拟机跑的时候无法识别集成的笔记本网卡,坑爹啊.后来想刻碟的,发现手头上还没有现成的东西,光驱是只读的,又要用到光驱,于是想到了了用U盘,正好手上 ...
- 使用_beginThreadex创建多线程(C语言版多线程)
_beginThreadex创建多线程解读 一.需要的头文件支持 #include <process.h> // for _beginthread() 需要的设置:Proj ...
- Linux vnc服务器操作(启动/停止/重起/自启动)
8.启动和停止VNC服务1)启动VNC服务命令[root@testdb ~]# /etc/init.d/vncserver startStarting VNC server: 1:rootNew 't ...
- File根据inputstream复制文件到临时目录,使用完之后删除
项目中有这个需求: 1)上传文件通过公司平台的校验,校验成功后,通过接口,返回文件流: 2)我们根据这个文件流进行操作.这里,先将文件流复制文件到项目临时目录WEB-INF/temp;文件使用完毕,删 ...