我的意图是走第二行并在.
分隔符之后查找字符。它是这样的:
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
我该如何解决?
答案 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