Shell 壳牌公司';tr';命令返回一个新的空行

Shell 壳牌公司';tr';命令返回一个新的空行,shell,csv,unix,Shell,Csv,Unix,我在Unix中使用trim命令时遇到问题。我从windows excel中保存了一个原始的.csv文件,我想将其移植到Unix中使用。从windows保存的original.csv中的内容如下: Func,Failing Cycle rtg_generic_A_A1_N2_cb_TEST_1_sm32,859180 rtg_generic_A_A1_N3_cb_TEST_1_sm32,859180 rtg_generic_A_A3_N5_dw_cb_TEST_1_sm32,788581 我想

我在Unix中使用trim命令时遇到问题。我从windows excel中保存了一个原始的.csv文件,我想将其移植到Unix中使用。从windows保存的original.csv中的内容如下:

Func,Failing Cycle
rtg_generic_A_A1_N2_cb_TEST_1_sm32,859180
rtg_generic_A_A1_N3_cb_TEST_1_sm32,859180
rtg_generic_A_A3_N5_dw_cb_TEST_1_sm32,788581 
我想在里面修剪回车,所以我下了命令:

tr '\r\n' '\n' < original.csv >trimmed.csv
似乎在两者之间添加了额外的空行。我可以知道为什么以及如何摆脱这条空行吗

感谢此命令:

tr '\r\n' '\n'` < file

要将行尾从Windows转换为Unix,还可以使用命令

,这样就不会用“\n”替换整个“\r\n”?不,不是这样。使用
tr-d'\r'
删除回车符<代码>\n已经存在。谢谢。我明白这一点。它只是将“\r”替换为“\n”。因此'\n\n'然后我将看到一个空行。但为什么它仍然将“\n”保留在“\r”旁边?谢谢,就是这样。谢谢…我明白你的意思。。。它用arg2替换arg1中的每个lexcial。。。。这就是为什么它带有2'\n'
tr '\r\n' '\n'` < file
tr -d '\r' < file