定时传输备份文件至指定地点脚本-Shell+crontab

#每周三、五传输confluence备份至备份服务器上

#运用crndtab实现定时,此只是定时运行的脚本:30 22 * * 3,5 sh /home/atlassian/backups/backup.sh

#本地备份存放目录:/home/atlassian/backups

filepath=/home/atlassian/backups

#显示当前时间

echo “date +%Y%m%d start upload…”

#等待五秒

sleep 5s

#给备份文件夹下所有文件添加权限
chmod -R 777 /home/atlassian/backups/*
#B服务器所用账号的密码
password=‘123123’

echo “start copy datafile from remote path…”

#将信息写入import.log文件中
echo “start copy datafile from remote path…” >> /home/atlassian/backups/import.log

#要运行脚本先安装expect:apt-get install expect

/usr/bin/expect <<EOF
#设置超时时间
set timeout 10
#-r 为 递归复制整个目录,即现在会将/home/20181025/整个文件夹拷贝过去
#-p 为保留源文件权限
#顺便提下 -P 22 可以修改传输端口,不写默认为22
#root为B上的用户账号
#/home/backup 为传输到的目录,即A上的/home/atlassian/backups整个文件夹会被放到B上的/data/home/confluence-backup文件夹下
set timeout -1

#传输文件
spawn scp -r -p $filepath root@192.168.xxx.xxx:/data/home/confluence-backup

#判断页面相应

yexpect {
“(yes/no)?”
{
send “yes\n”
expect “*assword:” {send “KaTeX parse error: Undefined control sequence: \n at position 9: password\̲n̲"} } "*asswor…password\n”
}
}
send “exit\n”

#当传输完100%再停止脚本,否则传输会终端
expect 100%
expect eof
EOF

#传输完成/终端后向日志文件中添加日志

if [ $? = 0 ]; then
echo “datafile copy successful!”
echo date +"%Y-%m-%d %H:%M:%S": >> /home/atlassian/backups/import.log
echo “datafile copy successful!” >>/home/atlassian/backups/import.log
echo “————————————” >>/home/atlassian/backups/import.log
else
echo “datafile copy failed!”
echo date +"%Y-%m-%d %H:%M:%S": >>/home/atlassian/backups/import.log
echo “datafile copy failed!” >>/home/atlassian/backups/import.log
echo “————————————” >>/home/atlassian/backups/import.log
fi

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MD5校验码:f4f9ea3f7bcc3375192be61dc110cb58 1、本软件是定时自动备份软件。 2、备份任务自动拷贝文件文件大小或修改时间变化的文件 3、MyCopy.exe是配置界面,该文件生成配置文件mycopy.ini,并能显示系统运行状态。 4、MyCopyTask.exe是执行拷贝任务的程序,它根据mycopy.ini配置的信息定时进行拷贝,在休眠状态下每5秒钟检查一次是否到达任务指定的拷贝时间。拷贝过程中出现错误,记录log.ini文件,但不会终止拷贝进程。 5、MyCopy.exe配置界面里有“启动”按钮把运行状态改为“运行”,并启动MyCopyTask.exe程序;“终止”按钮把运行状态改为“终止”,MyCopyTask.exe检测到系统状态时为“终止”则自动退出。“退出”按钮退出配置界面,但不会终止MyCopyTask.exe程序。“暂停”也会推出MyCopyTask.exe程序,但下次启动时,从上次暂停的任务开始继续拷贝。 6、MyCopyTask.exe运行时托盘上会显示图标。 7、要实现拷贝任务的自动启动,可以把MyCopyTask.exe加入到windows系统的“启动”菜单中,但配置文件中的运行状态一定是“启动”,否则程序会自动退出。 8、程序拷贝文件时意外终止,可以坚持mycopy.ini文件中的[系统状态]是否有“半个文件”,如果有说明“运行信息”中包含的文件没有拷贝完整。 9、如果因为某种原因错过了任务执行时机的话,拷贝程序会在启动后补回错过的拷贝任务。 10、任务名和文件路径中不能出现","(半角逗号) 11、标准版只记录log.ini文件,健康提示版当任务执行完之后会弹出提示信息。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值