【问题标题】:FTP via shellscript通过 shell 脚本进行 FTP
【发布时间】:2016-01-07 22:04:58
【问题描述】:

我想使用 shellscript 上传文件。我知道 scp 是解决此类任务的更好方法,但我需要使用 FTP。这是我得到的:

#!/bin/bash
HOST='myServer'
USER='anonymous'
PASSWD=''
DIR = '/Public'

ftp -n -v $HOST << EOT
user $USER $PASSWD
prompt
cd $MYDIRECTORY
mput cam.jpg
bye
EOT

Public 目录可由匿名用户访问。我会收到这样的回复:

已连接到 myServer。
220 一些文字
331匿名登录ok,发送你的 完整的电子邮件地址作为您的密码

仍然提示输入用户名。我不明白,我没有看到错误...谢谢您的任何建议

【问题讨论】:

  • 不清楚您是否尝试根据状态消息“发送完整的电子邮件地址作为密码”。考虑用这个重要信息更新你的 Q ;-)。祝你好运。
  • SInce $PASSWD 为空,您只是在发送没有密码的用户名。

标签: bash shell ftp


【解决方案1】:

匿名登录需要密码,但您尝试发送一个空密码。将其更改为:

PASSWD=user@yourdomain.com

【讨论】:

    【解决方案2】:

    好吧,至少这应该可行,但我认为您的问题有更好的解决方案。

    试试

    PASSWD='\n'
    

    这应该“有效”并解决您的问题。

    【讨论】:

      【解决方案3】:

      建议:确保您可以使用“匿名”ID 以交互方式登录并且它可以正常工作

      我注意到的另一件事是,您应该删除等号前后的空格。否则 bash 会说 'line 5: DIR: command not found'

      DIR = '/Public'
      

      此外,还不清楚 $MYDIRECTORY 是否已经定义了环境。它不在脚本中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-06
        • 2011-07-27
        • 2016-03-08
        • 2020-05-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多