linux 登录unix的ftp,Linux 下ftp自动登录

操作系统:linux

说明:使用了expect,  参数为ftp服务器地址和要下载的文件名

参数:lindex $argv 0  读取ftp服务器ip地址

lindex $argv 1  读取要下载的文件名

编辑:

#vi

spawn ftp [lindex $argv 0]

expect "Name (*):"

send "anonymous\r"

expect "Password:*"

send "\r"

expect "ftp>"

send "binary\r"

expect "ftp>"

send "hash\r"

expect "ftp>"

send "get [lindex $argv 1]\r"

expect "* Transfer complete."

send "exit\r"

执行方法:expect 服务器ip地址  文件名称

(expect 192.168.0.1 filename.txt )

使用Shell脚本来实现FTP的自动上传下载

(这里要确定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即该文件只能被该用户访问

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值