我在将文本文件从 Windows 7 传输到 FreeBSD 服务器时遇到问题ftp.exe
。文件传输后,行尾字符不会从 更改为\r\n
,\n
而是保留回车符,例如,可以看到mcedit
。^M
文件以ascii
模式传输。
以前有人遇到过类似的问题吗?据我所知,在传输ascii
过程中使用该模式FTP
应该会自动转换这些字符。这取决于服务器配置吗?
编辑:可以看到该文件这里。
编辑:我也尝试过,ncftp.exe
但Cygwin
结果是一样的。即使传输类型为,回车符也没有被删除ASCII
。
编辑:反过来也行不通。我在 FreeBSD 中创建了一个文本文件,然后将其ASCII
模式下载到我的 Windows 机器上。行尾字符保持LF
原样FreeBSD
。
编辑:lit stat
回报
211-FTP server status:
Connected to 160.135.126.21
Logged in as user
TYPE: ASCII
No session bandwidth limit
Session timeout in seconds is 320
Control connection is plain text
Data connections will be plain text
At session startup, client count was 9
vsFTPd 2.3.4 - secure, fast, stable
211 End of status
答案1
vsFTPd 为了使其守护进程“非常安全”,错误地默认禁用了 ASCII EoL 转换。必须通过编辑配置(/usr/local/etc/vsftpd.conf
默认)文件并添加以下几行来手动重新启用它:
ascii_upload_enable=YES
ascii_download_enable=YES