在循环中从一个字符提取到另一个字符的行

在循环中从一个字符提取到另一个字符的行

我这里有这一行,它可以很好地从一个字符提取行到第二个字符(不包括最后一行):

sed -n -e '/>AB123|x2/,/>/ p' filename | sed -e '$d' > output

但是当我将它编写为一个脚本来处理多个时,它就不再起作用了。我在循环和命令中尝试了“'>”与“$C”的所有组合,但不起作用。您可以看一下吗?

for C in >AB123|x2
do
sed -n -e '/"$C"/,/>/ p' filename | sed -e '$d' >> output
done

答案1

成功了!感谢您的输入!循环中的字符带有 '' AND 命令中的变量带有 ''。高五,非常感谢!磷

for C in '>AB123|x2'
  do
  sed -n -e '/'"$C"'/,/>/p' filename | sed -e '$d' >> output
done

(假设该部分在输入中仅出现一次)。

相关内容