Linux 下ftp自动登录

方法1:

#!/bin/sh

echo ‘use ftp command longing on 10.34.122.50′

ftp -v -n 10.34.122.50 << EOF

user test test

prompt

cd spdic

mget db_ks_comp.txt db_ks_entry.txt

EOF

脚本2

#!/bin/sh

echo ‘use ftp command longing on 10.34.122.50′

ftp -v -n 10.34.122.50 << EOF

user test test

prompt

bin

cd test

mget a.txt b.txt c.txt d.txt e.txt f.txt g.txt

lcd /home

get aentryMember.txt

EOF

方法2:

Linux 下ftp自动登录

操作系统:linux
说明:使用了expect,参数为ftp服务器地址和要下载的文件名
参数:lindex $argv 0  读取ftp服务器ip地址
lindex $argv 1  读取要下载的文件名
编辑:
#vi
spawn ftp [lindex $argv 0]
expect “Name (*):”
send “anonymous

expect “Password:*”
send ”

expect “ftp>”
send “binary

expect “ftp>”
send “hash

expect “ftp>”
send “get [lindex $argv 1]

expect “* Transfer complete.”
send “exit

执行方法:expect  服务器ip地址  文件名称
(expect  192.168.0.1 filename.txt )

扩展:可以根据需要把用户名和密码也作为参数输入里边,这个根据个人需求去做

使用Shell脚本来实现FTP的自动上传下载
1. FTP自动登录批量下载文件。

#####从ftp服务器上的/home/data 到 本地的/home/databackup####

#!/bin/bash

ftp -n<<!

open 192.168.1.171

user guest 123456

binary

cd /home/data

lcd /home/databackup

prompt

mget *

close

bye

!

2. FTP自动登录上传文件。

####本地的/home/databackup to ftp服务器上的/home/data####

#!/bin/bash

ftp -n<<!

open 192.168.1.171

user guest 123456

binary

hash

cd /home/data

lcd /home/databackup

prompt

mput *

close

bye

!

3. FTP自动登录下载单个文件。

####ftp服务器上下载/home/data/a.sh to local /home/databackup####

#!/bin/bash

ftp -n<<!

open 192.168.1.171

user guest 123456

binary

cd /home/data

lcd /home/databackup

prompt

get a.sh a.sh

close

bye

!
4. FTP自动登录上传单个文件。

####把本地/home/databachup/a.sh up ftp /home/databackup 下####

#!/bin/bash

ftp -n<<!

open 192.168.1.171

user guest 123456

binary

cd /home/data

lcd /home/databackup

prompt

put a.sh a.sh

close

bye

!
使用.netrc文件方式自动登录

在用户目录下下建.netrc的文件
.netrc文件的内容如下:
machine         host2        :host2作为登陆用的主机名
login        username        :ftp用户名
password         userpwd        : host2用户的口令
macdef                init        :定义一个名为init的宏,它将在自动注册进程的最后被执行
bin                        :文件以二进制传输
lcd                /backup        :进入本地目录/backup
cd                /pub        :进入远程主机目录/pub
mput                        :将/backup目录下的所有文件传输至远程主机
bye                        :退出ftp
并修改文件属性:$chmod 600 .netrc即该文件只能被该用户访问

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>