涓流 FTP 连接

Trickle FTP connection

我有一个备份数据的脚本。最后一行是:

echo "$FTPConnectstring
$FTPCommands
bye" | ftp -ivn

效果很好,但我希望我能'trickle'这个(即限制上传带宽使用)。 我尝试了很多这样的命令行:

echo "$FTPConnectstring
$FTPCommands
bye" | ftp -ivn | trickle -s -u 4096

但 ftp 传输似乎在没有 BW 使用限制的情况下执行 我也试过这样的东西

FinalCommand=$(echo -e "$FTPConnectstring\n$FTPCommands\nbye")
trickle -s -u 4096 ftp -ivn ${FinalCommand}

但是这个连接不正确 ftp...

感谢任何帮助!!

在您的第一次尝试中,您只 trickle 来自 ftp 的标准输出(取决于实现,可能只是进度消息,如果是的话)。在你的第二次尝试中,你有一个语法错误; ftp 的参数应该是主机名,而不是命令序列。试试这个:

echo -e "$FTPConnectstring\n$FTPCommands\nbye" |
trickle -s -u 4096 ftp -ivn

如果 ftp 二进制文件是静态链接的,trickle 不能覆盖其套接字处理内部;但在那种情况下,您可能可以切换到不同的 FTP 客户端,例如 ncftp,它在脚本编写方面也应该表现得更好。