我有两个csv文件,其中包含以下列:
alternate.csv:
Q P-003430 NO HOUR PARKING 8AM-10PM EXCEPT SUNDAY
csvtest.csv:
-73.90479333 40.70043234 5597032 P-003430 1010648.808 194477.1977 NO HOUR PARKING 8AM-10PM EXCEPT SUNDAY
我用过
awk 'NR==FNR{a[$2];next}$4 in a{print $1}' alternate.csv csvtest.csv >result.csv
为了比较列并获得我想要的结果。但是,最后一列NO HOUR PARKING 8AM-10PM EXCEPT SUNDAY
在最后一列中被切断为NO
。
例如result.csv出现为:
-73.90479333 40.70043234 5597032 P-003430 1010648.808 194477.1977 NO
有没有办法改变这一点,所以我可以在最后一栏保留整个短语NO HOUR PARKING 8AM-10PM EXCEPT SUNDAY
。
答案 0 :(得分:3)
从评论中承认,文件的实际格式以及OP实际尝试的格式存在不确定性,表面问题的明显解决方法是:
$ awk 'NR == FNR { a[$2]; next } $4 in a' alternate.csv csvtest.csv
-73.90479333 40.70043234 5597032 P-003430 1010648.808 194477.1977 NO HOUR PARKING 8AM-10PM EXCEPT SUNDAY
这可能无法解决问题,因为文件显然不是CSV格式,OP中的代码不是用于生成示例输出的代码。