0

Pythonスクリプトからダンプファイルを使用してpostgresデータベースを作成しようとしています。

以下は私が試したコードです:

cmd='cat dump.sql.gz | zcat - | PGPASSWORD=my_password psql -d voylla_solr -h localhost -p 5432 -U user_name'
args = shlex.split(cmd)
p=subprocess.Popen(args)
p.wait()

また、別のコマンドを使用してみました:

cat dump.sql | PGPASSWORD=my_password psql -d voylla_solr -h localhost -p 5432 -U user_name

EDIT* :次のコマンドを使用しました。

subprocess.Popen("zcat dump.sql.gz | PGPASSWORD=my_password psql -d voylla_solr -h localhost -p 5432 -U user_name", shell=True);

動作しますが、データベースの作成後も停止しません。データベース OS の作成後に実行を停止するにはどうすればよいですか?

これらのコマンドはどちらもコマンド ラインでは機能しますが、python スクリプトでは機能しません。私は何を間違っていますか

4

1 に答える 1

1

あなたは簡単に言うことができます:

subprocess.Popen("zcat dump.sql.gz | PGPASSWORD=my_password psql -d voylla_solr -h localhost -p 5432 -U user_name", shell=True);

(こちらもご参照ください

于 2013-09-16T04:50:53.933 に答える