我正在尝试编写一个bash脚本,我使用awk获取特定字段。
示例:
# cat test.txt
USER NAME LOCATION
Frank China
Martin Indonesia
Tom Hanks United States
Ron Howard Germany
当我尝试使用awk获取第一个字段时:
# cat test.txt | awk '{print $1}'
USER
Frank
Martin
Tom
Ron
但我希望输出为
预期输出
#cat test.txt
USER NAME
Frank
Martin
Tom Hanks
Ron Howard
我甚至尝试了awk -F"\t" '{print $1 (or) $2}'
,但我只得到了空白输出。我在while循环中使用了这个文件。
#cat test.txt | awk -F"\t" '{print $2}'
任何提示都会有所帮助。
答案 0 :(得分:4)
您可以使用带有2个或更多空格的分隔符:
awk -F ' {2,}' '{print $1}' file
USER NAME
Frank
Martin
Tom Hanks
Ron Howard