for 续3
--------siwuxie095
(三)delims=xxx
(xxx 是被定义的符号,该符号在文本中存在,将作为分隔符)
定义分隔符(用于切分文本)
格式:
FOR /F "Delims=符号" %%I IN (Command1) DO Command2
用法:
1、以文本中的标点符号来定义分隔符
2、被定义为分隔符的标点符号将被忽略(隐藏)。没有使用 tokens
定义显示,默认情况下只显示第一列内容
3、被定义的分隔符前后内容将变成独立的小节(或列)
4、for 默认以空格作分隔符,当没有写
"delims=",就默认以空格分隔
5、分隔符可以是一个,也可以是多个
6、用 delims 定义多个分隔符时,分隔符之间不能有空格。假如要包含
空格,空格不能居于所有符号之前或中间,必须放在最后
7、 我们写的代码为
"delims=",即有写 delims 参数 ,但没指明什么符
号作为分隔符,那么程序将认为文本没有分隔符,所有内容都会被显示
有人说
"delims="
这个句子,在某些情况下,程序会将等号后面的双引号
定义成了分隔符,从而没有达到预期的效果。于是,有些人将
"delims="
代码改写为"delims==",将等号作为分隔符。经实际测试,还没发现
"delims="
会将双引号定义成分隔符,所以,不要采用
"delims=="
这种
格式。假设真的有程序发生错乱,要定义的分隔符的最佳选择也不是等号,
而是后引号 "` ",此符号在
Esc 键下面,非常罕见 ,将它定义为分隔符就
等于定义没有任何符号为分隔符
分隔符和标点符号的联系和区别:
分隔符是用 "delims= "
定义了的文本中的符号。文本中的符号,只要
没有被定义过,就不是分隔符。分隔符需要定义,用 "delims= "
来定义,
定义中的符号都来自文本。
要弄清分节、分列。把每行两个分隔符之间的文字内容称为小节、列。
注意 :是分隔符之间,而非文中标点符号之间
如:将
《易经
·
乾》
的开头,保存为
易经.txt,文本内容:

做实验:
如果使用 Delims 来定义分隔符,可以使用原文中的冒号 (:),
写法是 "Delims=:",冒号作为分隔符后,冒号前后的内容被分成
两个小节,列表如下:
|
|
第一小节 |
分隔符 |
第二小节 |
|
第一行 |
乾 |
: |
元,亨,利,贞。 |
|
第二行 |
初九 |
: |
潜龙,勿用。 |
|
第三行 |
九二 |
: |
见龙再田,利见大人。 |
|
第四行 |
九三 |
: |
君子终日乾乾,夕惕若,厉无咎。 |
|
第五行 |
九四 |
: |
或跃在渊,无咎。 |
|
第六行 |
九五 |
: |
飞龙在天,利见大人。 |
|
第七行 |
上九 |
: |
亢龙有悔。 |
|
第八行 |
用九 |
: |
见群龙无首,吉。 |
备注:默认只显示第一列(即第一小节),默认忽略(屏蔽)分隔符,
默认忽略(屏蔽)第一个分隔符后面的内容
代码:
|
@echo off rem 分隔符的中英文要对应,这里是中文冒号 for /f "delims=:" pause>nul |
sublime中:

运行一览:因为没有定义要显示的列,这里只显示第一小节(列)
的内容,默认情况下忽略第一个分隔符(冒号)及其后面的内容

冒号改为逗号:
|
@echo off rem 分隔符的中英文要对应,这里是中文逗号 for /f "delims=," pause>nul |
sublime中:

运行一览:第一个逗号及其后面的所有内容都没有显示出来

再如:
|
@echo off rem 等号 = 后面直接由引号引起,即没有分隔符 for /f "delims=" pause>nul |
sublime中:

运行一览:delims 写出来了,但没指明什么符号是分隔符,计算机
认为字符串
"Hello "siwuxie095" World"
没有分隔符,显示第一列
即显示所有内容

【made by siwuxie095】
for 续3的更多相关文章
- .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实现简单瀑布流布局思想的小小扩展.代码基于前作的代码继续完善. 图片懒加载就是符合某些条件时才触发图片的加载.最常见的具体表 ...
随机推荐
- mcc,mex,mbuild
mcc将M文件转换成C/C++文件和相应的MEX包裹文件(需要Matlab编辑器),但在特定条件下可以自动调用mbuild或者mexmex将C/C++文件(入口函数为mexfunction())编译成 ...
- BZOJ2121: 字符串游戏(DP)(字符串删单词,求最多可以删去多少)
2121: 字符串游戏 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 672 Solved: 376[Submit][Status][Discuss ...
- os、os.path、shutil操作文件和文件路径的常用方法总结
os模块是python标准库中的一个用于访问操作系统功能的模块,下面简要介绍一下常用的命令 1.os.name(). 判断现在正在使用的平台,windows返回’nt’,Linux返回‘posi ...
- ES6必知必会 (九)—— Module
Module 1.ES6在语言标准的层面上,实现了模块功能,成为浏览器和服务器通用的模块解决方案,完全可以取代 CommonJS 和 AMD 规范,基本特点如下: 每一个模块只加载一次, 每一个JS只 ...
- cratedb 基本试用
安装 docker run -d -p 4200:4200 crate UI访问 http://localhost:4200/#!/ 创建数据 tweets 是默认导入的,点击帮助导航可以操作 登陆 ...
- NET怎么精确计算一个对象占用的内存空间(GMK)
NET如何精确计算一个对象占用的内存空间(GMK)如题 我最近做了一个类似Session的东西 但是我不知道最后管理起来他又多大 所以内存 对象 管理 session 类 分享到: ------解决方 ...
- oracle之 数据泵dump文件存放nfs报ORA-27054
问题描述:源端 10.2.0.4 目标端:11.2.0.4 在目标端划分1T存储与源端做一个NFS 错误:指定dump导出为本地文件系统,正常. 指定dump导出为nfs文件系统,报错. 报 ...
- JSONHelp json解析成类,类解析成string
using System; using System.Collections.Generic; using System.IO; using System.Runtime.Serialization. ...
- vmware esxi 4.1单IP访问不同机器
1 vmware ESXI先创建虚拟机ROS作为路由 ROS设置两张网卡 WAN网卡对应外网IP LAN网卡对应LAN IP 设置网卡名 int set 0 name=wai ...
- FilenameFilter 文件名过滤
public static final FilenameFilter JSON_CONFIG_FILE_FILTER = new FilenameFilter() { @Overrid ...