我使用了sed 's/^/LP1-/'
,但此命令还更改了以@开头的行。
@SQ SN:NbV1Ch16 LN:148804966
@SQ SN:NbV1Ch17 LN:145611047
@SQ SN:NbV1Ch18 LN:144482707
@SQ SN:NbV1Ch19 LN:137831541
@RG ID:OZBenth8_.fastp.fq.gz SM:OZBenth8_.fastp.fq.gz LB:OZBenth8_.fastp.fq.gz PL:ILLUMINA
@PG ID:bwa PN:bwa VN:0.7.17-r1188 CL:bwa mem OZBenth8_R1.fastp.fq.gz
HWI-ST945_0069:8:1101:1475:2032#NNNNNN 99 NbV1Ch07 110148523 60 100M = 110148853 430 CCAAAAAGCACAGCTGGACCAAACCGGCCCAAATATTGATAGCCGTCAGACTACGCCATGAGCGGAGTCCCCCAAGTTCGTTTGATAGAAAATTCAGGAC
CCCFFFFFHHHHHJJJJJJJJJJJHJJJJJJJJJJJJJIJJJIIJJJJJJJJHHHFFFDECEEDDDDDDDDDDDDACDEDDDDDDDEDDDDDDDDDDDDD NM:i:0 MD:Z:100 MC:Z:100M AS:i:100 XS:i:68 RG:Z:OZBenth8_.fastp.fq.gz
HWI-ST945_0069:8:1101:1475:2032#NNNNNN 147 NbV1Ch07 110148853 60 100M = 110148523 -430 AATCTTCTTCCAATTCCATGGCGGCCCAAAGTCACACGGCCTCTTCACTTTCTGAGGTTGCAAGAAGAACCACACAAAAAATATTGGGGGCTAAAATCCC
DDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEC=FFFHHHJJJJJJJIJHGIJJIBJJJIIJJJIJJJJJFIHJHJJJJJJJJJJJJJHHHHHFFFFFCCC NM:i:1 MD:Z:54T45 MC:Z:100M AS:i:95 XS:i:65 RG:Z:OZBenth8_.fastp.fq.gz
HWI-ST945_0069:8:1101:1446:2101#NNNNNN 83 NbV1Ch16 133875416 44 100M = 133874965 -551 ATATGTCTTATTCTTCTTCGACGAGTTTCAATCTAAAATTCAGTCAAAACCAAGTCTAATCTTCACCAAAACCCCTCAAAATTGAGATATAAACTCCTAA
DDDDDD
如何排除要更改的以@
开头的行?
先谢谢你,
发布于 2019-04-10 17:24:30
您可以使用
sed 's/^[^@]/LP1-&/'
在这里,^[^@]
用^
匹配行位置的开头,[^@]
匹配除@
之外的任何字符。LP-&
将匹配替换为LP1-
和与[^@]
匹配的字符。
请参见online sed
demo。
要同时修改空行,请使用$
替换,即行尾锚点:
sed -E 's/^([^@]|$)/LP1-&/'
或使用GNU sed的BRE POSIX:
sed 's/^\([^@]\|$\)/LP1-&/'
发布于 2019-04-10 19:18:50
您可以在s
命令前加上一个否定的地址:
sed -s '/^@/!s/^/LP1-/'
发布于 2019-04-13 08:31:48
通过gnu sed,
sed 's/^([^@])/\1LP1-/'
https://stackoverflow.com/questions/55609068
复制相似问题