美文网首页
Linux下使用awk处理windows文档的问题

Linux下使用awk处理windows文档的问题

作者: Nevrast | 来源:发表于2020-02-20 14:03 被阅读0次

Windows文档使用的是\r\n作为换行符
Linux中是使用\n作为换行符
这时就遇到个问题了,如果使用的vim(:set ff=unix)等比较智能的程序打开文档,一般不必理会换行符不一致的问题。
但是在使用awk处理文档时可能就会遇到一个坑。
例如文档:

能给我签名吗  出专辑再议   我现在就要   我现在就要签名 1
iphonex 好不好 iphone不好用   为什么不好用  iphonex为什么不好用   1
西安天气    西安今天的天气是多云转小雨25度到35度东北风3级   明天有雨吗   西安明天有雨吗 1

awk -F"\t" {if ($5 == 1) print $5}处理上面文档就会发现问题,因为awk没那么多小心思,它处理一行数据时只把\n给吃掉了,于是$5位置的数据就是^M1就不等于1了。
使用awk -F"\t" {if (int($5) == 1) print $5}可以正常比较。

相关文章

网友评论

      本文标题:Linux下使用awk处理windows文档的问题

      本文链接:https://www.haomeiwen.com/subject/errxqhtx.html