如何将 M 换行符删除为 CSV 文件中 Shell 脚本中的普通换行符

How to remove M line breaks to Normal line breaks in Shellscript in a CSV file

我有一个 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  "/t" }'
done

我正在获取

的输出
"3","italy" ^M "4","Uk" ^M "5"....

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

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