实现ftp的自动上传下载的shell脚本

发布时间:2020-05-15编辑:脚本学堂
介绍几个可以实现ftp自动上传与下载的shell脚本,代码不多,相当实用。有需要的朋友,参考下吧。

1,ftp自动登录,批量下载文件。
实现:
从ftp服务器上的/home/data 批量下载文件 到 本地的/backup/mydata。

代码如下:
 

复制代码 代码示例:
#!/bin/bash
#edit by www.jb200.com
ftp -n<<!
open 192.168.8.88
user guest 123456
binary
cd /home/data
lcd /backup/mydata
prompt
mget *
close
bye
!

2,ftp自动登录上传文件。
实现:
将本地/backup/mydata中的文件,上传到ftp服务器上的/home/data目录中。

代码如下:
 

复制代码 代码示例:
#!/bin/bash
#edit by www.jb200.com
ftp -n<<!
open 192.168.8.88
user guest 123456
binary
hash
cd /home/data
lcd /backup/mydata
prompt
mput *
close
bye
!

3,ftp自动登录下载单个文件。
实现:
从ftp服务器上下载/home/data/a.sh到本地的/backup/mydata目录中。

代码如下:
 

复制代码 代码示例:
#!/bin/bash
#edit by www.jb200.com
ftp -n<<!
open 192.168.8.88
user guest 123456
binary
cd /home/data
lcd /backup/mydata
prompt
get a.sh a.sh
close
bye
!

4,ftp自动登录上传单个文件。
实现:
把本地/home/databachup/a.sh上传到ftp服务器上的/backup/mydata目录中。

代码如下:
 

复制代码 代码示例:
#!/bin/bash
#edit by www.jb200.com
ftp -n<<!
open 192.168.8.88
user guest 123456
binary
cd /home/data
lcd /backup/mydata
prompt
put a.sh a.sh
close
bye
!

注:将以上脚本添加到crontab中,可以实现ftp自动上传、下载文件。类似于windows中的计划任务。

注解:
1,-n 不受.netrc文件的影响。(ftp默认为读取.netrc文件中的设定)
2,<< 是使用即时文件重定向输入。
3,!是即时文件的标志,它必须成对出现,以标识即时文件的开始和结尾。

本节有关ftp命令及crontab的用法,可以参考如下的文章:
ftp命令相关:
lftp命令使用笔记
lftp常用命令的用法总结
linux中ftp命令的用法详解
Shell脚本实现ftp的自动上传与下载

crontab相关:
linux中crontab定时执行任务命令的详解
crontab学习笔记
学习linux设置定时任务的crontab命令
crontab 命令格式与例子
不错的crontab教程