AWK在输出文件中的分隔符

时间:2015-02-23 11:17:14

标签: shell unix awk

我的输入文件如下:

1,mad,retl,231,tcs
2,vais,
3,ram,bfs
4,sam,ins
5,tina,bfs

我不确定输出中的列数。 O / P文件:

1|mad|retl|231|tcs
2|vais|
3|ram|bfs
4|sam|ins
5|tina|bfs

我尝试使用代码:

$ awk 'BEGIN {FS=",";OFS="|"} {print $0}' INPUT_FILE

结果以逗号分隔。 可以任何协助

2 个答案:

答案 0 :(得分:1)

您可以尝试下面的内容。

$ awk '{gsub(/,/,"|")}1' file
1|mad|retl|231|tcs
2|vais|
3|ram|bfs
4|sam|ins
5|tina|bfs

$ awk 'BEGIN{FS=",";OFS="|"}{$1=$1}1' file
1|mad|retl|231|tcs
2|vais|
3|ram|bfs
4|sam|ins
5|tina|bfs

答案 1 :(得分:1)

使用 sed

sed 's/,/|/g' File

只需将全球,替换为|

使用 tr

tr ',' '|' < File