我正在编写一个打开文件的shell脚本,需要找到像## FIND_ME ##这样的标签。我正在搜索的字符串是一个常量(并且它只有一个实例。)
找到该字符串后,我需要它从该点开始新搜索不同的字符串。
我的* nix技能有点生疏,应该尝试用grep,awk或sed实现这个吗?
答案 0 :(得分:3)
awk '/FINDME/{f=1}f&&/NEWSEARCH/{print}' file
壳
f=0
while read -r line
do
case "$line" in
*FINDME* ) f=1;;
esac
if [ "$f" -eq 1 ] ;then
case "$line" in
*NEWSEARCH*) echo "found next tag in: $line";;
esac
fi
done <"file"