【发布时间】:2020-09-05 06:06:26
【问题描述】:
我有一个场景 我在一个名为 demo.txt 的文件中有三个单词
我的三个字是:苹果、芒果、葡萄
我想编写一个线性命令来检查文件中是否所有三个单词都存在,然后显示成功找到匹配项,否则显示未找到匹配项
如何以一种线性方式使用 awk 命令
下面是我的代码不工作
awk '{print (/apple/|/mango/|/grapes/ ? "true : match found " : "false : not found ")}' /D/demo.txt
示例文件:demo.txt
abc:apple
b:mango
fgg:grapes
ball , candle
vik,mani
raj,vilas
除了第一个文件**我还有第二个文件,其中包含以下文本
Azr
hjkds
$$ABC=%wkde**mo
$Bilas=%ram
xyz
vxbnx
ram
我想检查是否存在确切的关键字 $$ABC=%wkde**mo $比拉斯=%ram
如果找到匹配显示消息关键字找到或否则显示关键字未找到
【问题讨论】:
-
You really need
awk?grep -E "apple|mango|grapes" 080_sin080a.txt && echo "found" || echo "not found"? -
@PabloA 检查是否存在三个单词中的任何一个,而 OP 询问输入是否包含所有三个单词
-
请提供示例文件以供测试。部分匹配就足够了,即。 葡萄 ~ 葡萄籽?
-
您得到了几个答案,请参阅stackoverflow.com/help/someone-answers 了解下一步该做什么。