Windows文檔使用的是\r\n作為換行符
Linux中是使用\n作為換行符
這時(shí)就遇到個(gè)問題了,如果使用的vim(:set ff=unix)等比較智能的程序打開文檔,一般不必理會(huì)換行符不一致的問題。
但是在使用awk處理文檔時(shí)可能就會(huì)遇到一個(gè)坑。
例如文檔:
能給我簽名嗎 出專輯再議 我現(xiàn)在就要 我現(xiàn)在就要簽名 1
iphonex 好不好 iphone不好用 為什么不好用 iphonex為什么不好用 1
西安天氣 西安今天的天氣是多云轉(zhuǎn)小雨25度到35度東北風(fēng)3級(jí) 明天有雨嗎 西安明天有雨嗎 1
awk -F"\t" {if ($5 == 1) print $5}處理上面文檔就會(huì)發(fā)現(xiàn)問題,因?yàn)閍wk沒那么多小心思,它處理一行數(shù)據(jù)時(shí)只把\n給吃掉了,于是$5位置的數(shù)據(jù)就是^M1就不等于1了。
使用awk -F"\t" {if (int($5) == 1) print $5}可以正常比較。