将awk输出保存到变量

时间:2018-09-24 11:52:44

标签: unix awk

我的意图是走第二行并在.分隔符之后查找字符。它是这样的:

prompt> awk -F '.' 'FNR == 2 {print $NF}' file_name.txt
Sam

但是,我希望将输出存储到变量中,但是显示错误:

prompt> Name= $(awk -F '.' 'FNR == 2 {print $NF}' file_name.txt)
Sam: command not found

我该如何解决?

1 个答案:

答案 0 :(得分:4)

不要Name=$(awk之间留有空格。这就变成了一个命令的临时变量赋值,类似于:

name=bob    # sets name to bob
name= bob   # sets name to nothing while running bob

换句话说,使用:

prompt> Name=$(awk -F '.' 'FNR == 2 {print $NF}' file_name.txt)
prompt> echo $Name
Sam