用awk切换csv文件的列

时间:2018-03-08 09:44:24

标签: csv awk

我想在csv文件中用3切换第2列

cat test.csv
1,1;1,2;1,3
2,1;2,2;2,3
3,1;3,2;3,3

我尝试过:

awk '{FS=";"; OFS=";"} { col1=$1;col2=$2;col3=$3; print col1,col3,col2 }' test.csv

但结果是:

;;1;1,2;1,3
;2,22,3
;3,23,3

我做错了什么?

1 个答案:

答案 0 :(得分:1)

以下内容对您有帮助。

awk -F";" '{print $1,$3,$2}' OFS=";"   Input_file

OR

awk -F";" '{gsub(.\r/,"");print $1,$3,$2}' OFS=";"   Input_file

如果您的Input_file具有控制M /托架字符,则使用上面的代码。