找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 15750|回复: 6

[问题求助] 关于awk中RS,FS的一个疑问,求大神帮忙解释一下,感谢!

[复制链接]
发表于 2018-7-13 10:27:20 | 显示全部楼层 |阅读模式
文件test如下
1111111
2222222
3333333#
4444444
5555555


执行命令 awk 'BEGIN{RS="#";ORS="\n";FS=" "}{print $1}' test.txt
1111111
5555555
执行命令awk 'BEGIN{RS="#";ORS="\n";FS="\n"}{print $1}' test.txt
1111111
空行

帮忙看下仅仅把FS替换为\n为分隔符结果就不一样, 为啥会显示一个空行谁能解释得清楚?
发表于 2018-7-13 12:22:15 | 显示全部楼层


日常建议换别的语言。
 楼主| 发表于 2018-7-13 17:17:59 | 显示全部楼层
回复 2# codegay


    为啥要换,挺好用的只是遇到些问题弄清楚就可以了呀
发表于 2018-7-13 20:27:52 | 显示全部楼层
我比较好奇的是为什么第一条的结果是 1111...5555,而不是 1111...4444
发表于 2018-7-13 20:29:13 | 显示全部楼层
至于为什么会出现空行,那是因为按 # 分割行后,444... 前面确实有一个 \n 啊
发表于 2018-7-13 23:44:57 | 显示全部楼层
本帖最后由 cfwyy77_bat 于 2018-7-15 11:49 编辑

用#作记录分隔符,\n作字段分隔符,第二条记录的第一个字段$1应该是“”  空。
 楼主| 发表于 2018-7-16 17:04:37 | 显示全部楼层
回复 4# CrLf


    不好意思我贴错了,确实是你说的那样
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 00:47 , Processed in 0.018352 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表