我知道这个问题How to find patterns across multiple lines using grep? 但我认为我的问题更复杂。所以我需要帮助。
我有一个字典BCFile文件
boundary
{
inlet
{
type fixedValue;
value uniform (5 0 0);
}
outlet
{
type inletOutlet;
inletValue $internalField;
value $internalField;
}
....
}
我正在编写一个脚本,以便打印出inlet边界条件fixedValue和outlet边界条件inletOutlet。
如果我使用cat BCFile | grep "type" | awk '{printf $2}' | tr -d ";",它将不起作用,因为关键字type多次出现。
如果我使用awk -v RS='}' '/inlet/ { print $4 }' BCFile,它也不起作用,因为关键字inlet也出现了很多次。
我需要一种方法来查找首先搜索关键字inlet然后搜索最接近 {的和}.
有谁知道如何巧妙地做到这一点?