[在跨OS平台的python中使用子进程

问题描述 投票:-2回答:1

我正在开发一个包含python脚本的软件,该脚本使用子进程运行bash命令。以后可以使用Windows运行此特定脚本吗?

bash命令大多是awk和sed。还有我主要在bash中运行的基因组软件

这里是该软件的链接:https://github.com/broadinstitute/gatk

其依赖项是python和C,可以在Linux上安装。不过,我只在Linux而不是Windows上运行它。

python bash subprocess cross-platform
1个回答
1
投票

我最近一直在努力。如果您想拥有在Unix和Windows上都可以使用的代码,建议您使用例如尽可能使用os.removeos.rename代替rmmv,用glob.glob代替ls,并且仅使用subprocess运行外部命令(请记住,它们大多数都具有.exe扩展名时间-您可以检查os.name来决定是否包含它)。您可能还想将所有grepawksed重写为Python函数。

重点是,即使从技术上讲,您可以在Windows上安装Bash并从控制台运行Python代码,但在我看来subprocess中的代码始终始终在CMD或PowerShell中运行。

© www.soinside.com 2019 - 2024. All rights reserved.