我必须编写FTP服务器的代码,而且我对数据如何传输有问题。
我在linux上使用ftp命令来测试它,我目前正在开发LIST,它发送工作目录中的文件/目录列表。一切正常(ftp很好地打印文件列表),除了ftp打印以下警告外:
WARNING! 5 bare linefeeds received in ASCII mode
File may not have transferred correctly.
我想删除这个警告,我认为ftp正在等待二进制数据,但我不知道如何通过套接字发送这样的数据,我目前正在做最基本的方式来发送ls结果:
dup2(dst_channel, 1);
execlp(
我正在下载两个文件从一个C-更工业的HMI FTP服务器。我不知道HMI运行的是什么操作系统,但我怀疑它的FTP服务器有一些怪癖。使用Jython2.7,可以轻松地读取一个文件,但另一个文件的文件名中有一个空格,而且普通的包内引号解决方案还不能正常工作。
以下操作在Windows 10 FTP客户端中有效。
ftp> get NO_SPACES.csv
200 PORT command successful.
150 Opening ASCII mode data connection for NO_SPACES.csv.
226 Transfer complete.
ftp: 1277
我正在尝试从使用SAXParser的Tomcat服务器中提取二进制数据。对于我的FTP服务器,我使用的是本源。我在吉顿吉斯特主持了两个DTD节目。这些是它们的内容:
基本XML (发送到服务器的内容):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE data SYSTEM "https://gist.githubusercontent.com/.../a.dtd">
<a>
<b>&send;</b>
</a>
a.
我想知道下面的代码是否有可能启用进度条或百分比计数器来检查下载的进度,但是由于下载是由FTP客户机执行的,所以没有看到alternativar。
遵循守则:
ECHO OFF
Color 17
Setlocal ENABLEDELAYEDEXPANSION
CLS
:MENU
ECHO.
ECHO ...............................................
ECHO . Selecione o numero desejado no menu abaixo .
ECHO ............................................
我尝试从ftp = 复制许多o文件,因此:
我用以下文本创建了一个code.txt文件:
open ftp://ftp.prodega.ch
user
password
lcd /D "E:\f2\" //this is my local directory
cd Bilder1/ //this is ftp folder
mget *
pause
我在cmd中执行了此行: ftp -s:code.txt,但遇到了以下错误:未知主机:,请帮助我