【问题标题】:How to grep a file which is a string redirected from awk如何grep文件是从awk重定向的字符串
【发布时间】:2016-07-25 19:31:04
【问题描述】:

我有一个这样的脚本:

awk '{
some code here
print path | grep somekeyword
}'

在上面的脚本中,grep 只会搜索“路径”本身作为字符串,但我真正想要的是搜索“路径”字符串指向的文件。

例如:

路径是

"/tmp/test.txt"

我要搜索test.txt的内容,而不是纯文本"/tmp/test.txt"

是否有一些 awk 或 grep 选项可以做到这一点?

提前谢谢你!

【问题讨论】:

  • grep somekeyword path 是正常语法
  • awk 是一个操作文本的工具。外壳是调用工具的环境。猜猜如果需要,应该从哪一个调用 grep(提示:这不是 awk)。如果您发布一些简洁、可测试的示例输入和预期输出,我们可以帮助您弄清楚如何以正确的方式做任何您想做的事情。
  • 你想要这个吗? awk '{ some code here }' "/tmp/test.txt" |grep somekeyword

标签: linux bash shell awk


【解决方案1】:

如果有正当需要,这里是一个例子

awk 'BEGIN{cmd="grep keyword file"; cmd | getline result; print result}'

【讨论】:

  • 以这种方式使用getline 存在一些问题。请参阅awk.info/?tip/getline 了解如何在需要时安全地调用 getline。
猜你喜欢
  • 2021-06-19
  • 1970-01-01
  • 2023-03-27
  • 2018-04-08
  • 2021-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多