pri*_*nka 1 text-processing bioinformatics
我有一个包含此内容的文件:
CHROM_POS
chr10_100009635
chr10_100187980
chr10_100229692
chr10_100267650
chr10_100269675
chr10_100279430
chr10_100285899
Run Code Online (Sandbox Code Playgroud)
我想向此文件添加新内容,例如:
chrX-1, chrX
Run Code Online (Sandbox Code Playgroud)
其中X代表上面的数字 所以应该是
chr10_100285898 chr10_100285899
Run Code Online (Sandbox Code Playgroud)
Perl 解决方案:
perl -p -e 's;([^_]+)_(\d+);"$1_" . ($2 - 1) . " $1_$2";e'
Run Code Online (Sandbox Code Playgroud)
该-p
标志遍历所有线路,-e
给出脚本作为参数。在([^_]+)
之前什么来捕捉_
到$1
,(\ d +)captures the digits into
$ 2 , the
e`修饰符来替换启用表情。
将您的输入文件作为参数或仅作为标准输入。