如何替换" nodejs"将变量转换为"搜索模式" AWK

时间:2014-03-24 02:12:19

标签: awk

嗨朋友我需要用awk替换搜索模式中的变量,我正在阅读所有相似的问题,但没有解释如何在“搜索模式”中使用变量。 awk命令的基本格式是:

awk '/search_pattern/ { action_to_take_on_matches; another_action; }' file_to_parse

问题我有一个简单的搜索脚本,来自一个网站。 ¿如何将变量的“nodejs”替换为“搜索模式”?

这是我在bash中的脚本(工作但我不能在awk中使用变量)

#!/bin/sh
searchname=nodejs


mojito=$(curl https://launchpad.net/ubuntu/+ppas?name_filter=$searchname |  awk -F/ '/>nodejs</{print $2}')
echo $mojito

1 个答案:

答案 0 :(得分:1)

您可以尝试此awk

awk -v patt="$searchname" '$0 ~ patt{ print $0}'

<强>测试

sat:~# searchname="nodejs"
sat:~# echo -e "sample text\nthis have nodejs value" | awk -v patt="$searchname" '$0 ~ patt{ print $0}'
this have nodejs value