我正在使用 vsql 导出,并且在标题中包含了一个明确的 ' \pset recordsep '\n' '。
我希望生成的文本文件在每条记录的末尾只有“LF”,但记录以“CRLF”结尾,尽管记录分隔符中缺少“\r”。这对我来说是个问题,因为我需要导出的文件没有“\r”字符。我正在运行 Windows。
有没有其他人遇到过这个问题?我在 vsql 文档中找不到任何相关内容。
我正在使用 vsql 导出,并且在标题中包含了一个明确的 ' \pset recordsep '\n' '。
我希望生成的文本文件在每条记录的末尾只有“LF”,但记录以“CRLF”结尾,尽管记录分隔符中缺少“\r”。这对我来说是个问题,因为我需要导出的文件没有“\r”字符。我正在运行 Windows。
有没有其他人遇到过这个问题?我在 vsql 文档中找不到任何相关内容。
我尝试使用\012
(octal for newline) 并将其等同于,\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 协议要求在传输开始之前知道确切的文件大小,因此必须在传输之前对其进行转换。