gpt4 book ai didi

linux - 搜索文本

转载 作者:太空宇宙 更新时间:2023-11-04 11:24:00 25 4
gpt4 key购买 nike

我正在尝试编写一个 shell 脚本来搜索文件中的文本并将文本和相关信息打印到一个单独的文件中。

来自这个包含基因 ID 列表的文件:

DDIT3   ENSG00000175197
DNMT1 ENSG00000129757
DYRK1B ENSG00000105204

我想在 gtf 文件中搜索这些基因 ID (ENSG*)、它们的 RPKM1 和 RPKM2 值:

chr16   gencodeV7       gene    88772891        88781784        0.126744        +       .       gene_id "ENSG00000174177.7"; transcript_ids "ENST00000453996.1,ENST00000312060.4,ENST00000378384.3,"; RPKM1 "1.40735"; RPKM2 "1.61345"; iIDR "0.003";
chr11 gencodeV7 gene 55850277 55851215 0.000000 + . gene_id "ENSG00000225538.1"; transcript_ids "ENST00000425977.1,"; RPKM1 "0"; RPKM2 "0"; iIDR "NA";

并将其打印/写入单独的输出文件

Gene_ID         RPKM1   RPKM2
ENSG00000108270 7.81399 8.149
ENSG00000101126 12.0082 8.55263

我已经在命令行上对每个 ID 使用了它:

grep -w "ENSGno" rnaseq.gtf| awk '{print $10,$13,$14,$15,$16}' > output.file

但是在编写 shell 脚本时,我尝试了 for、while、read、do 和更改变量的各种组合,但没有成功。任何想法都会很棒!

最佳答案

你可以这样做:

while read line
do
var=$(echo $line | awk '{print $2}')
grep -w "$var" rnaseq.gtf| awk '{print $10,$13,$14,$15,$16}' >> output.file
done < geneIDs.file

关于linux - 搜索文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16087131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com