41

以下のスクリプトのように、bash変数でスカラーpostgresql-valueを取得するにはどうすればよいですか?

dbname="testlauf"
username="postgres"

vartest='psql -c -d $dbname -U $username -h localhost -p 5432 "SELECT gid FROM testtable WHERE aid='1';"'
echo "$vartest"

私はいくつかの異なる文章を試しましたが、何もうまくいかないようです。前もって感謝します。

4

2 に答える 2

71

-cオプションをその引数 (クエリ) の直前に置きます。-tタプル値だけを取得するための追加オプションも使用してください。そしてもちろん、バッククォート ( ` ) 演算子を使用します。

ファイルが冗長な出力を追加する場合があるため、オプションの使用-Xも推奨されます。また、列の配置 (空白) を無効にするオプションも使用できます。.psqlrc-A

NOTICE またはその他の追加メッセージをスキップするには、-qフラグを含めます。

vartest=`psql -d $db -U $user -AXqtc "SELECT gid FROM testtable WHERE aid='1'"`
于 2013-03-06T09:53:49.307 に答える