python - cygwin 运行命令而不是 cmd python

标签 python cygwin cmd subprocess

我有一个 python GUI,我想运行一个 shell 命令,但使用 Windows cmd 无法执行该命令 我已经安装了 cygwin,我想知道如何运行 cygwin 而不是 Windows cmd。我想使用子进程并获取 .sh 文件的结果 但我的代码

subprocess.check_output("./listChains.sh < 2p31protein.pdb")

这将在 cmd 中运行它,因为 windows 无法识别它,所以它不起作用,所以我怎样才能让它在 cygwin 而不是 cmd 中运行

最佳答案

执行 cygwin shell(例如 bash)并让它运行您的脚本,而不是直接运行您的脚本:

subprocess.check_output("C:/cygwin/bin/bash.exe ./listChains.sh < 2p31protein.pdb")

或者,关联 .sh 文件类型扩展名以使用 bash.exe 打开。

关于python - cygwin 运行命令而不是 cmd python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13529852/

相关文章:

python - 如何使用 Rally API 获取测试用例名称

java - 92khz 到 192khz 音频还有什么可以做的吗?

cygwin - perforce 密码在 cygwin 中未隐藏

windows - 如何在 cygwin 中安装 libtoolize?

java - FFmpeg 音频不同步问题

python - 比较两列值并从第一列获取不同的值

python - Scrapy 或 BeautifulSoup 从各种网站上抓取链接和文本

linux - Hive命令行通过Cygwin select查询报错

python - QProcess 无法写入 cmd.exe

bash - 如何基于某些字符串提取一行和之前的一行