- 首先确认当前下载服务器安装了
service vsftpd status
如果没有安装先去安装:blog.csdn.net/SoWhatWorld…
安装完成后检查是否安装ftp 命令,如果提示**-bash: ftp: 未找到命令** 安装ftp命令
yum -y install ftp
测试连接ftp 输入ip回车后提示输入账号和密码
ftp 123.123.123.123 # 换成连接的ip
可以 使用 ls 命令查看当前的文件,到此说明可以正常使用ftp。
- 编写shell 命令 (条件是定时更新最新的文件,思路:执行的时候清空目录下的文件,然后再通过ftp下载最新的文件)
####ftp服务器上下载 1.xlsx
#!/bin/bash
rm -f /home/ftproute/1.xlsx # 先删除旧的文件
ftp -n<<!
open 123.123.123.123 #替换 ip
user 用户名 密码 # 替换用户名 密码
binary # 设置文件传输方式为二进制模式
lcd /home/ftproute #改变本地的当前目录为 /home/ftproute
prompt # 关闭交互模式
get 1.text 1.xlsx # 从服务器下载指定文件到客户端 1.text 是ftp文件 1.xlsx 是要保存成什么文件
close #在不结束ftp进程的情况下,关闭与ftp服务器的连接
bye # 退出ftp命令状态
! #执行本地主机命令
写完之后先手动执行一下.sh 文件看看是否有报错,然后再加入定时任务
crontab -e
加入:每天晚上10点执行一次
1 22 * * * /home/backup/bkDatabaseName.sh
下面附上ftp 常用命令和表格
- systemctl start vsftpd 启动
- systemctl stop vsftpd 停止
- systemctl restart vsftpd 重启
内部命令 | 说明 | |
---|---|---|
ls | 显示服务器上的目录 | |
get | 从服务器下载指定文件到客户端 | |
put | 从客户端传送指定文件到服务器 | |
open | 连接ftp服务器 | |
quit | 断开连接并退出ftp服务器 | |
cd directory | 改变服务器的当前目录为directory | |
lcd directory | 改变本地的当前目录为directory | |
bye | 退出ftp命令状态 | |
ascii | 设置文件传输方式为ASCII模式 | |
binary | 设置文件传输方式为二进制模式 | |
! | 执行本地主机命令 | |
cd | 切换远端ftp服务器上的目录 | |
cdup | 上一层目录 | |
close | 在不结束ftp进程的情况下,关闭与ftp服务器的连接 | |
delete | 删除远端ftp服务器上的文件 | |
get | 下载 | |
hash | 显示#表示下载进度 | |
mdelete | 删除文件,模糊匹配 | |
mget | 下载文件,模糊匹配 | |
mput | 上传文件,模糊匹配 | |
mkdir | 在远端ftp服务器上,建立文件夹 | |
newer | 下载时,检测是不是新文件 | |
prompt | 关闭交互模式 | |
put | 上传 | |
pwd | 显示当前目录 |