Shell awk:循环通过制表符分隔的文件
输入csv文件包含以下内容,以制表符分隔Shell awk:循环通过制表符分隔的文件,shell,unix,awk,scripting,Shell,Unix,Awk,Scripting,输入csv文件包含以下内容,以制表符分隔 3915 LOW Thia Khiang LIU 我需要找到第四项,在上述情况下,它恰好是“刘” 但是,下面的脚本正在打印“Khiang”。它将空间视为选项卡 awk '{print "UID="$1"\tLN="$2"\tAlias="$4}' myInputFile.csv 明确指定tab作为字段分隔符: $ awk -F'\t' '{print "UID="$1"\tLN="$2"\tAlias="$4}' myInputFile.csv
3915 LOW Thia Khiang LIU
我需要找到第四项,在上述情况下,它恰好是“刘”
但是,下面的脚本正在打印“Khiang”。它将空间视为选项卡
awk '{print "UID="$1"\tLN="$2"\tAlias="$4}' myInputFile.csv
明确指定tab作为字段分隔符:
$ awk -F'\t' '{print "UID="$1"\tLN="$2"\tAlias="$4}' myInputFile.csv
UID=3915 LN=LOW Alias=LIU
默认情况下(以及将文字空格指定为字段分隔符时),
awk
将任何行内部的空格和/或制表符视为(单个)字段分隔符(并额外修剪前导和尾随空格)。明确指定制表符为字段分隔符:
$ awk -F'\t' '{print "UID="$1"\tLN="$2"\tAlias="$4}' myInputFile.csv
UID=3915 LN=LOW Alias=LIU
默认情况下(以及指定文字空间作为字段分隔符时),
awk将任何行内部的空格和/或制表符视为(单个)字段分隔符(并额外修剪前导和尾随空格)。您还可以使用{printf“UID=%s\tLN=%s\tAlias=%s\n”、$1、$2、$4}
甚至开始{FS=OFS=“\t”}{print“UID=“$1”,LN=“$2”,Alias=“$4}
。您也可以使用{printf”UID=%s\tLN=%s\tAlias=%s\n“,$1,$2,$4}
甚至开始{FS=OFS=“\t”}{print“UID=“$1”,LN=“$2”,Alias=“$4}
。