用过linux系统的伴侣都应该知道awk功能的壮大 , 那windows系统DOS下有没有近似功能号令 , 可以或许获取文件中或号令输出文本中指定字段的值呢?谜底是必定的 , FOR 号令就可以或许实现该功能 。
方式/
1for号令在XP系统上就已经起头存在了 , 它的功能也很壮大 , 可以完当作良多复杂的功能 。
文章插图
2获取字段值只是for号令浩繁功能中的一个 , 经由过程加参数“/f”来实现 。
文章插图
3如文件students.txt内容如下:
姓名 春秋 成就
张三 18 80
【windows下如何实现类似awk获取文件字段值功能】李四 19 86
要取得所有人的春秋 , 可以用号令:
for /f "skip=1 tokens=2" %i in (students.txt) do echo %i
“skip=1 ”暗示跳过第一行 , 从第二行起头读取文件
“tokens=2”暗示提取第二个字段值
没有指定“delims”分隔符的值 , 利用默认分隔符——“空格和TAB键”作为各字段的分隔符 。 如需指定“ , ”作为分隔符 , 只需如下输入:
for /f "skip=1 tokens=2 delims=," %i in (students.txt) do echo %i
文章插图
文章插图
4如需读取记实并将每笔记录按后面的格局生当作一句话:XXX本年XX岁 , 成就是XX 。 可以用号令:
for /f "skip=1 tokens=1,2*" %i in (students.txt) do echo %i本年%j岁 , 成就是%k
“tokens=1,2*”暗示提取第一、二字段 , 并将第二字段后的所有内容做为第三字段的值输出 。
%i,%j,%k别离对应第一、二、三字段的值
文章插图
5for号令还可以从号令输出的成果中提出字段值 , 如从历程列表中查找记事本notepad历程并获取PID的号令可如下:
for /f "usebackq tokens=2" %i in (`tasklist^|findstr notepad`) do echo %i
如需利用号令 , 必需利用“usebackq”参数 , 而且号令要用反引号符“`”(键盘上tab键上方的键)引起来 。 号令中若有特别字符 , 需在前面加“^”字符进行字符转义 。
文章插图
注重事项若是认为本经验对您有所帮忙 , 请点击下面【投票】撑持一下作者!
若是您想今后随时浏览请点击右下角飘浮按钮【保藏】!若是您认为本经验可以或许帮忙到您的伴侣 , 请点击页面右下角的双箭头进行分享 。
以上内容就是windows下如何实现类似awk获取文件字段值功能的内容啦 , 希望对你有所帮助哦!
推荐阅读
- 在Word下,如何批量更改文件名
- wps软件PPT如何设置图片背景
- 如何关闭手机的开发者模式
- 小米手机Miui9如何打开并设置GPS
- 小米手机如何用悬浮球进行锁屏
- 如何使用手机观看世界杯直播
- 支付宝如何查看好友芝麻信用分
- 智慧树学分课如何看成绩规则?
- 在WPS文字中如何插入流程图
- 如何用word将文章回车和空格批量删除