FTP远程备份第一种方式:通过shell脚本

31 篇文章 2 订阅
18 篇文章 0 订阅

1.ftp命令描述:

ABOR 中断数据连接程序
ACCT <account> 系统特权帐号
ALLO <bytes> 为服务器上的文件存储器分配字节
APPE <filename> 添加文件到服务器同名文件
CDUP <dir path> 改变服务器上的父目录
CWD <dir path> 改变服务器上的工作目录
DELE <filename> 删除服务器上的指定文件
HELP <command> 返回指定命令信息
LIST <name> 如果是文件名列出文件信息,如果是目录则列出文件列表
MODE <mode> 传输模式(S=流模式,B=块模式,C=压缩模式)
MKD <directory> 在服务器上建立指定目录
NLST <directory> 列出指定目录内容
NOOP 无动作,除了来自服务器上的承认
PASS <password> 系统登录密码
PASV 请求服务器等待数据连接
PORT <address> IP 地址和两字节的端口 ID
PWD 显示当前工作目录
QUIT 从 FTP 服务器上退出登录
REIN 重新初始化登录状态连接
REST <offset> 由特定偏移量重启文件传递
RETR <filename> 从服务器上找回(复制)文件
RMD <directory> 在服务器上删除指定目录
RNFR <old path> 对旧路径重命名
RNTO <new path> 对新路径重命名
SITE <params> 由服务器提供的站点特殊参数
SMNT <pathname> 挂载指定文件结构
STAT <directory> 在当前程序或目录上返回信息
STOR <filename> 储存(复制)文件到服务器上
STOU <filename> 储存文件到服务器名称上
STRU <type> 数据结构(F=文件,R=记录,P=页面)
SYST 返回服务器使用的操作系统
TYPE <data type> 数据类型(A=ASCII,E=EBCDIC,I=binary)
USER <username>> 系统登录的用户名

2.ftp连接:

$ ftp 10.88.88.88

$ 输入用户名

$ 输入密码

3.进入远程目录:

$ cd

4.切换本地目录:

$ lcd

5.查看当前路径:

$  pwd

6.查看当前路径下的所有文件:

$ ls

7.ftp上传文件:

$ put 文件名

PS:上传的文件都来自于本地主机的当前目录下,比如:在/opt/test下运行的ftp命令,put上传的文件都是/opt/test目录下的,也可以指定上传的目的路径,比如:put test.txt /远程主机目录具体位置

8.ftp下载文件:

$ get test.txt

9.删除远程文件:

$ delete test.txt

10.删除远程文件夹:

$ RMD test

 

11.远程创建文件夹:

$ mkdir test

12.ftp关闭:

$ bye 或者 quit

13.shell 脚本远程备份:

#!/bin/bash
# 本地备份文件的存放路径
SAVEPATH=/home/test
# 需要备份文件的路径
BAKDIR=/var/www
cd ${SAVEPATH}
tar cvzf www_bak.tar.gz ${BAKDIR}
# 端口
PORT=21
# 需要上传的文件名,不支持上传文件夹
#FILE=test.txt
FILE=www_bak.tar.gz
# 需要上传的本地文件所在目录
CLIENTDIR=/home/test
# 上传到远程主机的目录
SEVERDIR=/www_bak
ftp -n <<- EOF
open 远程主机ip
user 用户名 密码

cd ${SEVERDIR}/
lcd ${CLIENTDIR}
put ${FILE}
bye
EOF

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在Windows中,我们可以使用PowerShell脚本备份数据库到FTP服务器。下面是一个示例脚本: ```powershell # 设置数据库和FTP服务器的相关信息 $databaseServer = "数据库服务器名称" $databaseName = "数据库名称" $databaseUsername = "数据库用户名" $databasePassword = "数据库密码" $ftpServer = "FTP服务器地址" $ftpUsername = "FTP用户名" $ftpPassword = "FTP密码" # 创建备份文件名,基于当前日期和时间 $backupDate = Get-Date -Format "yyyyMMdd_HHmmss" $backupFileName = "$databaseName" + "_" + "$backupDate" + ".bak" # 使用sqlcmd命令备份数据库到本地 $sqlcmdCommand = "sqlcmd -S $databaseServer -d $databaseName -U $databaseUsername -P $databasePassword -Q `"BACKUP DATABASE $databaseName TO DISK=N'C:\Temp\$backupFileName'`"" Invoke-Expression $sqlcmdCommand # 使用ftp命令上传备份文件FTP服务器 $ftpCommand = @" open $ftpServer $ftpUsername $ftpPassword put C:\Temp\$backupFileName $backupFileName bye "@ $ftpCommandPath = "C:\Temp\ftp_command.txt" $ftpCommand | Out-File -FilePath $ftpCommandPath ftp -s:$ftpCommandPath # 删除本地备份文件FTP命令文件 Remove-Item -Path "C:\Temp\$backupFileName" Remove-Item -Path $ftpCommandPath ``` 请注意,上述脚本中的数据库服务器、数据库名称、用户名、密码,以及FTP服务器、用户名、密码需要按照实际情况进行替换。此外,脚本会将备份文件保存在本地的C:\Temp目录下,并将文件上传到FTP服务器后再删除本地备份文件。 希望以上内容对您有所帮助!如有其他问题,请继续提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

只要思想不滑坡办法总比困难多--小鱼干

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值