我有一个输出(geom_dist_output)文件,它包含"Modo: 1","Modo: 2","Modo: 3“,直到"Modo: 90”。在"Modo: 1“和"Modo: 2”之间有几点,因此对于grep,我正在使用的数据:
模式-1;
grep -A100000 "Modo: 1" geom_dist_output | grep -B100000 "Modo: 2" | egrep -v "Modo: 2" > Mode-1模式-2;
grep -A100000 "Modo: 2" geom_dist_output | grep -B100000 "Modo: 3" | egrep -v "Modo: 3" > Mode-2同样地,也高达90。
是否有任何方式或顺序,在那里我可以grep不同的模式-I (i=1,2..90)和创建不同的文件。
发布于 2019-04-17 12:16:21
如果你想要一个单一模式-$i:
sed -n "/Modo: $i/,/Modo:/{/Modo:/b;p}" geom_dist_output >Mode-$i这里,sed将Modo: $i中的行打印到下面的Modo: ( Modo:行除外)。
如果您希望同时使用所有模式-1..90文件,如果您有一个带有csplit选项的--suppress-matched,那么:
csplit -fMode- --suppress-matched geom_dist_output /Modo:/ '{*}'https://stackoverflow.com/questions/55710136
复制相似问题