【发布时间】:2014-03-24 13:26:47
【问题描述】:
嗨朋友们,我需要用 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
【问题讨论】:
-
抱歉,但它必须通过“如何将变量的“nodejs”替换为“搜索模式”来理解您的意图。考虑编辑您的问题以显示从
curl检索到的示例数据,然后是什么您需要作为最终输出,以及您当前获得的输出。 -
1.如果您在使用变量时引用它们,那么您几乎总是会遇到更少的问题,即
...name_filter="$searchname". 2. Assuming you mean to supply"$searchname"` 也用于 awk,而不是使用硬编码值,而是执行awk -F/ '/'"${searchname}"'{print $2}'。祝你好运。 -
@sheller,谢谢,但不起作用,说
awk: line ord. 1: regular expression ^ unfinished
标签: awk