shell 调用 awk里面的变量

database_system 2013-04-27 03:10:21
各位大侠,小弟需要利用awk里面的变量传到shell中使用。

查阅了相关文档,
利用eval $(awk.....) 能够执行,而且也能成功,但是使用管道后,再使用eval ,在shell里面回显,是个空值, 例如eval $(ps -aux | grep ...| awk '{a=1}') 我在shell里面 echo $a是没有数值的

是因为我使用eval的过程中,出了问题,还是方法不对,请各位指教下
...全文
237 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ljc007 2013-04-28
  • 打赏
  • 举报
回复
eval $(ps -aux | grep "bash" | awk '{print "a=1"}')
echo $a
database_system 2013-04-28
  • 打赏
  • 举报
回复
引用 1 楼 linwhwylb 的回复:
[quote=引用 楼主 database_system 的回复:] 各位大侠,小弟需要利用awk里面的变量传到shell中使用。 查阅了相关文档, 利用eval $(awk.....) 能够执行,而且也能成功,但是使用管道后,再使用eval ,在shell里面回显,是个空值, 例如eval $(ps -aux | grep ...| awk '{a=1}') 我在shell里面 echo $a是没有数值的 是因为我使用eval的过程中,出了问题,还是方法不对,请各位指教下
要保证eval得到你要的结果,就应该满足$(awk...)这个命令的输出是a=1,才能成功赋值到shell当中。[/quote] 嗯,这个问题解决了。疏忽了没输出
Linux-Torvalds 2013-04-27
  • 打赏
  • 举报
回复
引用 楼主 database_system 的回复:
各位大侠,小弟需要利用awk里面的变量传到shell中使用。 查阅了相关文档, 利用eval $(awk.....) 能够执行,而且也能成功,但是使用管道后,再使用eval ,在shell里面回显,是个空值, 例如eval $(ps -aux | grep ...| awk '{a=1}') 我在shell里面 echo $a是没有数值的 是因为我使用eval的过程中,出了问题,还是方法不对,请各位指教下
要保证eval得到你要的结果,就应该满足$(awk...)这个命令的输出是a=1,才能成功赋值到shell当中。

23,125

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧