-4

我正在尝试修剪这个特定文件,并且只需要突出显示的部分,因为它包含数据。我查看了其他一些脚本,但它们是为了删除常量值的列而编写的。

数据是:

id=69 rna=**5_8S_rRNA** ntax=61
id=58 rna=**U1** ntax=100
id=56 rna=**U2** ntax=211
id=37 rna=**tRNA** ntax=967
id=75 rna=**Vault** ntax=75
id=53 rna=**RNaseP_nuc** ntax=117
id=57 rna=**RNaseP_bact_a** ntax=306
id=62 rna=**RNaseP_bact_b** ntax=114
id=41 rna=**U3** ntax=26
id=50 rna=**6S** ntax=154
id=84 rna=**DsrA** ntax=5
id=48 rna=**U4** ntax=178
id=46 rna=**SRP_euk_arch** ntax=102
id=46 rna=**U5** ntax=181
id=65 rna=**GcvB** ntax=26
id=71 rna=**Telomerase-vert** ntax=37
id=50 rna=**Telomerase-cil** ntax=20
id=49 rna=**U6** ntax=200
id=43 rna=**Intron_gpI** ntax=30
id=51 rna=**RNase_MRP** ntax=67
id=33 rna=**SECIS** ntax=61
id=90 rna=**Histone3** ntax=64
id=86 rna=**OxyS** ntax=5
id=98 rna=**RRE** ntax=65
id=54 rna=**IRE** ntax=39
id=73 rna=**rne5** ntax=6
id=88 rna=**snoR9** ntax=5
id=91 rna=**GlmZ_SraJ** ntax=21
id=77 rna=**HDV_ribozyme** ntax=33
id=72 rna=**U8** ntax=49
id=87 rna=**7SK** ntax=45
id=78 rna=**VA** ntax=54
id=79 rna=**RNAI** ntax=10
id=98 rna=**FinP** ntax=6
id=82 rna=**Vimentin3** ntax=19
id=74 rna=**S15** ntax=79

我只是希望将项目保留在星号中,其他所有内容都必须删除。

4

1 回答 1

2

如果这是在 Linux 系统上,这个 Perl 单行程序将产生您需要的结果。

perl -ne '/rna=(\S+)/ and print "$1\n"' myfile

如果您在 Windows 上,请使用

perl -ne "/rna=(\S+)/ and print qq($1\n)" myfile

输出

5_8S_rRNA
U1
U2
tRNA
Vault
RNaseP_nuc
RNaseP_bact_a
RNaseP_bact_b
U3
6S
DsrA
U4
SRP_euk_arch
U5
GcvB
Telomerase-vert
Telomerase-cil
U6
Intron_gpI
RNase_MRP
SECIS
Histone3
OxyS
RRE
IRE
rne5
snoR9
GlmZ_SraJ
HDV_ribozyme
U8
7SK
VA
RNAI
FinP
Vimentin3
S15
于 2012-04-08T22:59:24.423 回答