2

vsql を使用してエクスポートしていますが、ヘッダーに明示的な ' \pset recordsep '\n' ' を含めました。

結果のテキスト ファイルでは、各レコードの末尾に「LF」だけが含まれていると予想されますが、レコード セパレータに「\r」がないにもかかわらず、レコードは代わりに「CRLF」で終了します。エクスポートされたファイルに「\ r」文字が含まれないようにする必要があるため、これは私にとって問題です。私はWindowsを実行しています。

他の誰かがこの問題に遭遇しましたか? vsql のドキュメントに関連するものは見つかりませんでした。

4

1 に答える 1

1

(改行の8進数)を使用してみ\012ましたが、それと同等である\nため、 内でそれを行う方法がわかりませんvsql

Sourceforge からdos2unix.exeというプログラムをダウンロードして、次のようにパイプすることができます。

vsql -h myserver -U dbadmin -w mypassword -f export.sql | dos2unix.exe > output.txt

また、もう一度考えてみます... この出力ファイルを UNIX サーバーに転送する場合は、代わりにASCII mode、自動的に変換されたファイルを転送することができCRLFます。一部のクライアントは、ファイル拡張子 (通常はAutomatic mode. SCP の場合、転送を開始する前に正確なファイル サイズを知るという SCP プロトコルの要件により、転送前に変換する必要があることに注意してください。

于 2014-11-26T01:48:53.060 に答える