我知道shp2pgsql
位於postgresql目錄中,但我不確定在此之後要使用哪些命令。我已經徹底閱讀了手冊,並且我知道shp2pgsql
命令的所有參數和選項。我得到的錯誤:使用shp2pgsql轉換形狀文件
-bash: shp2pgsql: command not found
它也許是權限問題?
我知道shp2pgsql
位於postgresql目錄中,但我不確定在此之後要使用哪些命令。我已經徹底閱讀了手冊,並且我知道shp2pgsql
命令的所有參數和選項。我得到的錯誤:使用shp2pgsql轉換形狀文件
-bash: shp2pgsql: command not found
它也許是權限問題?
解決方法是導出程序的路徑並將其放入$ PATH變量中。 另一種選擇是將命令移動到已包含在PATH中的目錄中,例如/ usr/bin。
例
出口PATH = /庫/ PostgreSQL的/ 9.0 /斌/:$ PATH
或
正確的命令是«shp2pgsql»,你有一個錯字。
用例:
# shp2pgsql -c -D -s 4269 -I shaperoads.shp myschema.roadstable > roads.sql
# psql -d roadsdb -f roads.sql
您首先生成一個sql文件,然後加載到你的數據庫中。
對於輸入錯誤仍然越來越感到遺憾:roads.sql:權限被拒絕 – John
對於那些與shp2pgsql一起使用的線程,您還可以將'shp2pgsql'的輸出直接傳遞給'psql',而不是保存中間SQL文件。上面的例子看起來像:'shp2pgsql -c -D -s 4269 -I shaperoads.shp myschema.roadstable | psql -d roadsdb'有關更多信息,請查看[Boston GIS shp2pgsql備忘單](http://www.bostongis.com/pgsql2shp_shp2pgsql_quickguide_20.bqg)。 –
聽起來像一個'PATH'問題。 '哪個shp2pgsql'顯示它在哪裏? –
是的你是對的我把初始目錄導出到$ PATH,它非常感謝你的輸入。 – John