首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >包含ogr2ogr外部.sql文件的envsubst

包含ogr2ogr外部.sql文件的envsubst
EN

Stack Overflow用户
提问于 2020-06-17 21:50:58
回答 1查看 69关注 0票数 0

我尝试将envsubst命令与作为选项传递给ogr2ogr的外部sql文件结合使用,但无法完全正常工作。

代码语言:javascript
复制
export STOP_NAME=Park;

ogr2ogr \
-f geojson \
/vsistdout/ \
stops.csv \
-dialect sqlite \
-sql envsubst < @stop_geo.sql

其中,stop_geo.sql是:

代码语言:javascript
复制
SELECT *
FROM stops
WHERE stop_name = '$STOP_NAME'

此错误显示为:

代码语言:javascript
复制
Warning 1: layer names ignored in combination with -sql.
ERROR 1: In ExecuteSQL(): sqlite3_prepare_v2(envsubst):
  near "envsubst": syntax error

有没有办法在ogr2ogr -sql命令选项中替换外部sql文件中的环境变量?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-21 10:30:24

envsubst命令需要包含在带引号的命令替换中(即"$()")。无需使用ogr2ogr sql documentation中提到的@语法,只需使用常见的<运算符读取即可。

代码语言:javascript
复制
export STOP_NAME=Park;

ogr2ogr \
-f geojson \
/vsistdout/ \
stops.csv \
-dialect sqlite \
-sql "$(envsubst < stop_geo.sql)"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62430635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档