我试图找到如何在n行中的文本文件中搜索两个字符串。 例如,给定文件:
abc def
SSSSSS
SSSSSS
SSSSSS
SSSSSS
SSSSSS
pqr xyz
我想" myscript abc pqr 5"除了" myscript abc pqr 7(或更高版本)"返回找到它的文件名和(奖励)匹配的行和介入的行。它应该适用于任何字符串。
为了让它变得有趣,我正在使用Solaris 10并且无法访问任何gnu命令或扩展。这就像在糖蜜中游泳一样。
TIA
佰。
答案 0 :(得分:0)
这个脚本几乎可以帮助你:
#!/bin/bash
if [[ $(pcregrep -M "$1.*(\n|.)*$2" test.txt | wc -l) == $3 ]]
then
echo "found"
else
echo "not found"
fi
您可以修改此项以查找文件名,而不仅仅是打印"找到"。
此脚本的灵感来自this answer。