【发布时间】:2020-06-15 00:13:59
【问题描述】:
我正在尝试让 PostGIS shp2pgsql 和 pgsql2shp 模块在 PyCharm 中工作。我可以让它们在命令提示符下正常工作,但不能在 PyCharm 中运行我的脚本:
'shp2pgsql' 未被识别为内部或外部命令, 可运行的程序或批处理文件。
找到的最相似的谷歌搜索是pycharm and subprocess - what works in console doesn't work in Pycharm,但并不完全相同。
我已经根据https://www.jetbrains.com/help/pycharm/absolute-path-variables.html在PyCharm中设置了path变量,但还是重现了同样的错误。
这是我的代码:
import time
import subprocess
command = 'shp2pgsql -I -d -s 27001 //d10/t/ca/analysis/road/extents/ne_extent.shp d.extent_ne| psql -q -d projects -h postgres.local'
process = subprocess.Popen(command, shell=True)
while process.poll() is None:
time.sleep(0.5)
我在 Windows 10 中使用 PyCharm 版本 2019.3.1。
【问题讨论】:
-
您是否在 PyCharm 中使用了正确的 Python 解释器?我的意思是在 cmd 中使用的相同
-
我认为它是一样的。我只安装了一个。但我也不认为命令提示符在调用 shp2pgsql 和 pgsql2shp 时完全不使用 python,那这有关系吗?
标签: python cmd pycharm subprocess