如何在CSV文件的Shellscript中将M换行符删除为普通换行符

时间:2020-08-21 11:32:03

标签: linux shell unix carriage-return

我有一个CSV文件file1.csv

Name age Id address country
X     12  3  aaa     Italy
Y     13  5  xxx      uk
...

我也有文本文件file2.txt。

 Id 
3
4
5
...

我实际上在显示Idcountry。 使用这两个文件并显示ID和国家 我尝试了这段代码

#!/bin/bash
CSV_FILE_PATH ="root/file1.csv"
Id_txt= 'file2.txt'

for Id in Id_txt
do
LINE $(grep ${Id},$CSV_FILE_PATH})
echo $LINE|awk -F ',''{print $3 "/t" $5}'
done

我正在输出

"3","italy" ^M "4","Uk" ^M "5"....

1 个答案:

答案 0 :(得分:1)

如果dos2unix $INPUT命令不起作用,那么您也可以使用

  • tr -d '\r' < $INPUT > $OUTPUT
  • 或者对于就地编辑,您可以使用sed -i 's/\r$//g' $INPUT
相关问题