ftp是一个基于FTP文件传输的命令。相比较而言,lftp的用法更灵活。lftp和ftp为用户启动一个交互式会话(通过显示消息提示用户输入)。如果我们不使用交互模式,而是希望进行自动文件传输,又该怎么做呢?
下面的脚本可以用来实现FTP自动传输。
示例:
复制代码 代码如下:
#!/bin/bash
# 文件名:ftp.sh
# 用途:自动化 FTP 传输
HOST='domain.com'
USER='foo'
PASSWD='password'
ftp -i -n $HOST <<EOF
user ${USER} ${PASSWD}
binary
cd /home/slynux
puttestfile.jpg
getserverfile.jpg
quit
EOF
上面的脚本包含下列结构:
<<EOF
DATA
EOF
这是用来通过stdin向FTP命令发送数据。
在示例的脚本中,ftp的选项-i关闭用户的交互会话,user ${USER} ${PASSWD}设置用户名和密码,binary将文件模式设置为二进制模式。
您可能感兴趣的文章:
一个备份ftp服务器上的重要文件的
shell/ target=_blank class=infotextkey>shell脚本
查找并上传已更新文件的ftp脚本
检查ftp备份数据完整性及短信告警的shell
去除ftp shell脚本中mget的多余交互式提示的方法
使用ftp进行下载的shell脚本
自动登陆FTP服务器的小shell