我想插入多行SQL文件的Python腳本中的文件內容:Python:如何將文件內容附加到格式字符串?
sql_file = open(sql_file_path, 'r')
file_content = sql_file.read()
file_content = file_content.replace("placeholder", "realvalue")
import_cmd = 'ogr2ogr -f "PostgreSQL" \
-lco GEOMETRY_NAME=the_geom \
PG:"host=localhost user={db_user_name} port=5432 \
dbname={db_name} password={db_password}" \
{source_file} -nln "{db_table_name}" \
-sql "$(cat {file_content})"'
os.system(import_cmd.format(
db_user_name=db_user_name,
db_name=db_name,
db_password=db_password,
source_file=source_file,
db_table_name=db_table_name,
file_content=file_content
))
文件sql_file_path
包含多行。內容通過replace
修改。然後,新的file_content
必須附加到ogr2ogr
命令行工具的-sql
參數中。但是,腳本會拋出此錯誤:
Syntax error: "(" unexpected (expecting ")")
你真的想''(貓{file_content})「'而不是'回聲'? – Dinesh 2014-10-21 22:53:07