我正在尝试将awk输出传递给这样的变量:
$ awk -F : '/frost/{print $3}' /etc/group > $mygid
$ echo $mygid
$
但是当我想看到mygid
变量时,它就会挂起。我不得不这样做:
$ "$(awk -F : '/frost/{print $3}' /etc/group)"
让它发挥作用。
我不明白为什么。
由于
答案 0 :(得分:3)
>
写入文件。 > $mygld
尝试写入名为变量$mygid
中当前任何内容的文件。
要在变量中输出命令,可以使用命令替换和赋值,或者处理替换和read
:
mygid=$(awk -F : '/frost/{print $3}' /etc/group)
或
read mygid < <(awk -F : '/frost/{print $3}' /etc/group)
我建议你阅读一些基本的shell编程教程,也许是http://mywiki.wooledge.org/BashGuide