好吧,我尝试使用外壳程序命令使python脚本下载一些git数据。但是我希望git命令能够“查询”用户登录,并将状态报告给用于调用python的shell。我尝试使用管道进行此操作。
subprocess.run('git clone SERVER ./build',
shell=True)
但是我什么也没看到,python进程只是在等待而不要求输入。
当我直接使用python main.py在终端中运行它时,它确实起作用了,只是当通过pycharm IDE运行时,输入和输出都被吃掉了。
只是为了进一步澄清:当我通过pycharm的启动器运行它时,我的确注意到该过程“永无止境”,直到我杀死它并提高它KeyboardInterrupt
。因此,它正在“某处”等待用户输入,只是pycharm控制台中未显示输入。
我应该怎么做?如果我不添加shell=True
子进程,git
则会抱怨该命令不是现有的文件/目录。
在运行设置下,需要设置一个配置标志才能使其工作:
在“配置”选项卡的“执行”下,勾选“模拟控制台中的终端输出”。
在我的情况下,我必须重新启动pycharm才能使它在更新旧配置时生效(将其添加到新的运行配置时可以直接使用)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句