如何在脚本中从Python执行snpsift的shell命令

0 投票
1 回答
27 浏览
提问于 2025-04-12 12:57

我该如何在一个Python脚本中执行以下命令,输入是 (All_20180418.vcf.gz, A_annot.vcf),输出是 (A_annotated_2.vcf)?

java -Xmx12G -jar SnpSift.jar annotate -id All_20180418.vcf.gz  A_annot.vcf > A_annotated_2.vcf

我是不是应该用到 import os 和 import subprocess 这两个模块?

1 个回答

1

我不太确定我完全理解你的问题,不过如果你想知道怎么在一个Python脚本里运行那个命令,那么使用subprocess是个不错的选择。如果我理解得没错,你可以这样做:

import subprocess
process_list = ["java", "-Xmx12G", "-jar", "SnpSift.jar", "annotate", "-id", "All_20180418.vcf.gz",  "A_annot.vcf", ">", "A_annotated_2.vcf"]
result = subprocess.run(process_list)
print(result.stdout)

这里的result.stdout就是你运行那个命令后得到的输出。

撰写回答