awk命令:如何告诉它区分空格和制表符分隔符

时间:2016-07-20 06:26:55

标签: linux awk printf

我使用此命令awk '{print $1}' "$line"从以下文件中获取一列数据:(下划线表示制表符作为分隔符,示例为三列数据)

Joe Jonas_____8_____45  
Cersei Lann_____4_____23  
Bo Tox_____6_____28  
Mis Ter Yo_____7_____89  

当我运行命令时,说要获得第一列,但输出显示如下:

Joe  
Cersei  
Bo  
Mis  

如何使命令忽略第一列数据中的空格?

1 个答案:

答案 0 :(得分:0)

将字段分隔符(-F)更改为制表符:

$ awk -F$'\t*' '{gsub(/ /,"_",$1); print $1,$2}' test2.in
Joe_Jonas 8
Cersei_Lann 4
Bo_Tox 6
Mis_Ter_Yo 7

编辑:在第一列上使用gsub用下划线替换空格。