0

嗨,我正在从我的 Windows 服务器运行以下命令。我已经添加了私钥,因此在身份验证方面很好。但是当我运行命令时遇到一个奇怪的问题

psftp user@host -b FTPfile.txt

文件 FTPfile.txt 只有两行。

cd /apps/scripts/batch/sln/input
put Test.txt

但我收到错误psftp: unknown command "´╗┐cd"

在此处输入图像描述

而且我注意到文件第一行中给出的任何命令都会返回类似的错误。

4

1 回答 1

1

问题在于以 UTF-8 编码FTPfile.txt的 Unicode字节顺序标记(U+FEFF) 开始,它对应于字节 0xEF 0xBB 0xBF。psftp 认为这些字节是命令名称的一部分。当它将这些字节作为错误消息的一部分打印到控制台时,它们会根据代码页 850进行解释,这使得它看起来像´╗┐.

要解决此问题,您需要摆脱 BOM。你是如何创作的FTPfile.txt?Windows 文本编辑器通常具有将文件的编码更改为“ANSI”的设置(纯 ASCII 也可以)。

于 2017-07-21T05:26:28.840 回答