如何使用awk或sed注释多行?

如何使用awk或sed注释多行?,awk,sed,Awk,Sed,我有一个perl程序,正在下载并在docker文件中使用 这个程序正在调用tbl2asn,但是我不需要输出,这个部分运行很长时间。因此,我想对这个perl程序中的几行进行注释 runcmd( "tbl2asn -V b -a r10k -l paired-ends -M n -N 1 -y 'Annotated using $EXE $VERSION from $URL' -Z". " \Q$outdir/$prefix.err\E -i \Q$outdir/$prefix.fsa\E

我有一个perl程序,正在下载并在docker文件中使用

这个程序正在调用
tbl2asn
,但是我不需要输出,这个部分运行很长时间。因此,我想对这个perl程序中的几行进行注释

runcmd(
  "tbl2asn -V b -a r10k -l paired-ends -M n -N 1 -y 'Annotated using $EXE $VERSION from $URL' -Z".
  " \Q$outdir/$prefix.err\E -i \Q$outdir/$prefix.fsa\E 2> /dev/null"
);
delfile("$outdir/errorsummary.val");
delfile( map { "$outdir/$prefix.$_" } qw(dr fixedproducts ecn val) );

msg("Repairing broken .GBK output that tbl2asn produces...");
runcmd("sed 's/COORDINATES: profile/COORDINATES:profile/' < \Q$outdir/$prefix.gbf\E > \Q$outdir/$prefix.gbk\E");
delfile("$outdir/$prefix.gbf");
runcmd(
“tbl2asn-V b-a r10k-l成对端-M n-n 1-y'使用$URL'-Z中的$EXE$版本进行注释”。
“\Q$outdir/$prefix.err\E-i\Q$outdir/$prefix.fsa\E 2>/dev/null”
);
delfile($outdir/errorsummary.val);
delfile(映射{“$outdir/$prefix.$”}qw(dr fixedproducts ecn val));
msg(“修复tbl2asn产生的损坏的.GBK输出…”);
runcmd(“sed's/COORDINATES:profile/COORDINATES:profile/”<\Q$outdir/$prefix.gbf\E>\Q$outdir/$prefix.gbk\E”);
delfile(“$outdir/$prefix.gbf”);
这些是我要注释的行,至少这行
“tbl2asn-vb-ar10k-l成对端点-mn-n1-y”使用$EXE$VERSION从$URL'-Z注释。”
在perl程序中只出现一次

runcmd(
  "tbl2asn -V b -a r10k -l paired-ends -M n -N 1 -y 'Annotated using $EXE $VERSION from $URL' -Z".
  " \Q$outdir/$prefix.err\E -i \Q$outdir/$prefix.fsa\E 2> /dev/null"
);
delfile("$outdir/errorsummary.val");
delfile( map { "$outdir/$prefix.$_" } qw(dr fixedproducts ecn val) );

msg("Repairing broken .GBK output that tbl2asn produces...");
runcmd("sed 's/COORDINATES: profile/COORDINATES:profile/' < \Q$outdir/$prefix.gbf\E > \Q$outdir/$prefix.gbk\E");
delfile("$outdir/$prefix.gbf");
如何使用awk或sed通过正则表达式(一行在前,八行在后)对此行进行注释


多谢各位

Awk
解决方案:

示例
file.pl

some text
runcmd(
  "tbl2asn -V b -a r10k -l paired-ends -M n -N 1 -y 'Annotated using $EXE $VERSION from $URL' -Z".
  " \Q$outdir/$prefix.err\E -i \Q$outdir/$prefix.fsa\E 2> /dev/null"
);
delfile("$outdir/errorsummary.val");
delfile( map { "$outdir/$prefix.$_" } qw(dr fixedproducts ecn val) );

msg("Repairing broken .GBK output that tbl2asn produces...");
runcmd("sed 's/COORDINATES: profile/COORDINATES:profile/' < \Q$outdir/$prefix.gbf\E > \Q$outdir/$prefix.gbk\E");
delfile("$outdir/$prefix.gbf");
some text
some text
#runcmd(
#  "tbl2asn -V b -a r10k -l paired-ends -M n -N 1 -y 'Annotated using $EXE $VERSION from $URL' -Z".
#  " \Q$outdir/$prefix.err\E -i \Q$outdir/$prefix.fsa\E 2> /dev/null"
#);
#delfile("$outdir/errorsummary.val");
#delfile( map { "$outdir/$prefix.$_" } qw(dr fixedproducts ecn val) );
#
#msg("Repairing broken .GBK output that tbl2asn produces...");
#runcmd("sed 's/COORDINATES: profile/COORDINATES:profile/' < \Q$outdir/$prefix.gbf\E > \Q$outdir/$prefix.gbk\E");
#delfile("$outdir/$prefix.gbf");
some text
一些文本
runcmd(
“tbl2asn-V b-a r10k-l成对端-M n-n 1-y'使用$URL'-Z中的$EXE$版本进行注释”。
“\Q$outdir/$prefix.err\E-i\Q$outdir/$prefix.fsa\E 2>/dev/null”
);
delfile($outdir/errorsummary.val);
delfile(映射{“$outdir/$prefix.$”}qw(dr fixedproducts ecn val));
msg(“修复tbl2asn产生的损坏的.GBK输出…”);
runcmd(“sed's/COORDINATES:profile/COORDINATES:profile/”<\Q$outdir/$prefix.gbf\E>\Q$outdir/$prefix.gbk\E”);
delfile(“$outdir/$prefix.gbf”);
一些文本

awk'/“tbl2asn-vb.+-Z”\.$/{n=NR+9}NR