【问题标题】:Linux Bash Ftp Automated Image UploadLinux Bash Ftp 自动图像上传
【发布时间】:2012-05-13 23:15:47
【问题描述】:

我正在尝试将图像上传到 ftp 服务器。 我可以上传,但上传的图片似乎不像我发送的那样。它在服务器端转换随机彩色图像。是什么原因? 我将 ftp 模式更改为二进制。

#!/bin/sh 
HOST='192.168.10.31' 
USER='ozen.ozkaya'
PASSWD='Oo123456' 
FILE1='RefImg_192.168.10.33_1.jpg'
ftp -n -v $HOST <<END_OF_SESSION 
user $USER $PASSWD 
put $FILE1
bye 
END_OF_SESSION

如何上传图片而不损坏?

问候

【问题讨论】:

    标签: linux image bash ftp


    【解决方案1】:

    在当前情况下,我使用带有公钥身份验证的 sftp。它解决了所有安全问题,并提供匹配密钥后的无密码登录。

    【讨论】:

      【解决方案2】:

      恐怕 FTP 协议不支持可靠传输和故障转移。 您需要编写脚本。

      查看 Ernest 的响应,您确实忘记将模式切换为二进制。但如果您在传输过程中出现连接失败,请不要指望 FTP 会重新启动它。

      所以回答你的问题: “我怎样才能上传图片而不会损坏?”到目前为止,没有人提供有效的答案。

      我也会推荐 WPUT http://wput.sourceforge.net/

      一点G搜索,这里有个项目可以试试:http://lftp.yar.ru/

      【讨论】:

        【解决方案3】:

        FTP 默认以 ASCII(7 位)模式发送;您需要以二进制模式发送。在put 之前添加type binary 命令,一切就绪。

        【讨论】: