天天看点

awk给外部变量赋值

假设将值存在文件t中,文件t内容如下,只有一行:a b c

需要将a、b和c分别赋给外部变量x、y和z,则脚本可写成如下:

eval $(awk '{ printf("x=%s\ny=%s\nz=%s",$1,$2,$3); }' ./t)

echo $x

echo $y

echo $z

请注意printf函数中的换行符\n是必须的,起关键作用的是eval命令,它在很多场景有特别的用处。

    本文转自eyjian 51CTO博客,原文链接:http://blog.51cto.com/mooon/909783,如需转载请自行联系原作者