[pgsql-jp: 28394] psql の -F オプション・・・
Hajime Lucky Okada
paraiso @ luckyo.8m.com
2002年 12月 20日 (金) 12:40:11 JST
こんにちは、岡田と申します。
表題の通り、特定のテーブルの特定のフィールドだけをタブ・デリミタで
「簡単」に出力したく、外部(スクリプト)から psql コマンド一行で
済まそうとしました。 が、ちょつとおしい所で想定外の動きをします。
間違っているところがあればご教授下さい。
(適当ですが)オリジナルのデータは
prince$ psql -c "select * from aaa" pcsdb
id | content
----+-------------
| XX'XX
4 | ぽよよん
5 | %test
6 | どかーん
7 | te%st
8 | だめ〜'〜ん
9 | _どこ\どこ
(7 rows)
これを psql のシェルで pcsdb=# \a \t \pset fieldsep '\t' をセットした時の
出力を想定して、、
prince$ psql -F '\t' -Atc "select * from aaa" pcsdb とすると・・・
\tXX'XX
4\tぽよよん
5\t%test
6\tどかーん
7\tte%st
8\tだめ〜'〜ん
9\t_どこ\どこ
'\t' のところを "\t" にしても同じ。本当のタブ文字を入れて何とか期待した結果を
得られるのですが、これは「そういう」仕様なんでしょぅか?
私のやり方ってダメですか?
なお、本来は、* の所を好きなフィールドを指定して好きなカラムだけの
CSVを取りたい、というのが私の究極?の狙いです。
宜しくお願い致します。
岡田はじめ
pgsql-jp メーリングリストの案内