一、 编写脚本

编写一个脚本文件,使脚本可以执行备份命令。 
例如,将文件目录 /home/backups/balalala 备份到/home目录下,并压缩。

1. 创建脚本

命令格式: touch 路径/文件名.sh 
例如: 
输入命令:touch /home/backup.sh 

2. 写入命令

首先进入脚本:vi命令 
vi /home/backup.sh 
在脚本内写入:

#!/bin/sh
mkdir /home/beifen
#创建一个临时文件(要保存备份的路径)
cp -r /home/backups/balalala /home/beifen
#数据存在backups目录下,备份到beifen目录下,所以先将数据拷过来
tar -zcPvf /home/backup$(date +%Y%m%d).tar.gz /home/beifen
#将数据所在文件夹beifen打包
rm -rf /home/beifen/
#删除临时文件内容 find ./ -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;
#删除改文件夹下超过30天的文件

3. 执行脚本文件

直接手动执行脚本文件。 
命令格式:sh 路径/文件名.sh 
例如:sh /home/backup.sh

二、 设置定时执行本脚本。

例如:设置脚本每7天执行一次。

1. 安装crond

如果没有安装crond服务就先装上服务。 
检查服务状态:service crond status

2. 修改crontab内容

输入命令:crontab –e 
进入后继续输入命令:0 0 /7 *  sh /home/backup.sh   ---->一定要加上sh命令
设置为每7天执行一次脚本文件 
然后,保存退出:wq

sh脚本前面五个字段分别表示分钟(0-59)、小时(0-23)、日(1-31)、月(0-12)、星期几(0-6)后面的为脚本所在目录   --->一定要加上sh命令

3. 重新启动crond服务

输入命令:service crond restart

至此配置完成!

#! /bin/sh
mkdir /home/plantask/temp
#创建一个临时文件 保存备份的路径
cp -r /www/xilan /home/plantask/temp
#数据存在plantask目录下,备份到temp目录下,所以先将数据拷过来
tar -zcPvf /www/backups/xilan$(date +%Y%m%d%H%M%S).tar.gz /home/plantask/temp -->时间精确到毫秒
#将数据所在文件夹plantask打包
rm -rf /home/plantask/temp
#删除临时文件内容 find ./ -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;

crontab

0 */1 * * * sh /home/plantask/backup.sh  #每小时执行一次
*/1 * * * * sh /home/plantask/backup.sh #每分钟执行一次 用于调试

  

Linux下定时备份文件的更多相关文章

  1. Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录

    此为在网络上找来的,觉得很好! 实现目的: 对Mongodb数据库日志按天保存,并且只保留最近7天的日志记录. 具体操作: 使用Mongodb数据库自带的命令来切割日志 ps -def | grep ...

  2. Linux下定时备份MySQL数据库的Shell脚本

    Linux下定时备份MySQL数据库的Shell脚本   对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间 ...

  3. Linux下定时执行脚本(转自Decode360)

    文章来自:http://www.blogjava.net/decode360/archive/2009/09/18/287743.html Decode360's Blog  老师(业精于勤而荒于嬉 ...

  4. linux下定时执行任务方法【转】

     之前就转过一篇关于定时任务的文章,前俩天用,还的翻出来看!!!再转一次,备用,,需要的时候不用麻烦找! ----------------------------------------------- ...

  5. linux下定时执行任务的方法

    linux下定时执行任务的方法 在LINUX中你应该先输入crontab -e,然后就会有个vi编辑界面,再输入0 3 * * 1 /clearigame2内容到里面 :wq 保存退出. 在LINUX ...

  6. 实用脚本 2 -- Linux下定时执行脚本

    今天学习Linux下定时执行脚本,看到一篇讲解比较好的文章,特此拿来分享. 原文链接:http://www.blogjava.net/decode360/archive/2009/09/18/2877 ...

  7. 将一个jar包放到linux下定时执行

    将一个jar包放到linux下定时执行 1.在dbtodb文件夹下新建一个dbtodb.sh,脚本内容为: #!/bin/bash cd /usr/dbtodb/ java -jar dbtodb.j ...

  8. Dcloud课程6 php脚本如何在Linux下定时更新数据

    Dcloud课程6 php脚本如何在Linux下定时更新数据 一.总结 一句话总结:linux下用crontab命令实现定时任务. 1.linux下执行php脚本用什么命令? 直接用php命令php ...

  9. Linux下定时备份数据库

    linux下使用crontab定时备份MYSQL数据库的方法只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: mkdir /var/lib/mysqlbackup cd ...

随机推荐

  1. EasyUI的Datagrid鼠标悬停显示单元格内容

    功能描述:table鼠标悬停显示单元格内容 1.js函数 function hoveringShow(value) { return "<span title='" + va ...

  2. [题解]N 皇后问题总结

    N 皇后问题(queen.cpp) [题目描述] 在 N*N 的棋盘上放置 N 个皇后(n<=10)而彼此不受攻击(即在棋盘的任一行,任一列和任一对角线上不能放置 2 个皇后) ,编程求解所有的 ...

  3. Hyperscan-5.1.0 安装

    安装依赖ragel ragel源码下载地址 编译安装 $ tar -xvf ragel-6.10.tar.gz $ cd ragel-6.10 $ ./configure $ make $ sudo ...

  4. [转帖]为应用程序池“XXX”提供服务的进程在与 Windows Process Activation Service 通信时出现严重错误。该进程 ID 为“XXXX”。数据字段包含错误号。

    [终极解决方案]为应用程序池“XXX”提供服务的进程在与 Windows Process Activation Service 通信时出现严重错误.该进程 ID 为“XXXX”.数据字段包含错误号. ...

  5. 微信支付之01------获取订单微信支付二维码的接口------Java实现

    [ 前言:以前写过一个获取微信二维码支付的接口,发现最近公司新开的项目会经常用到,现在我又翻出代码看了一遍,觉得还是把整个代码流程记下来的好 ] 借鉴博客: 他这篇博客写得不错,挺全的:https:/ ...

  6. 【NLP】选择目标序列:贪心搜索和Beam search

    构建seq2seq模型,并训练完成后,我们只要将源句子输入进训练好的模型,执行一次前向传播就能得到目标句子,但是值得注意的是: seq2seq模型的decoder部分实际上相当于一个语言模型,相比于R ...

  7. ZuulFilter 执行顺序

    说明: 创建了两个Filter,分别是 PreFilter public class PreFilter extends ZuulFilter { public PreFilter() { super ...

  8. openflow packet_out和packet_in分析

    任务目的 1. 掌握OpenFlow交换机发送Packet-in消息过程及其消息格式. 2. 掌握OpenFlow控制器发送Packet-out消息过程及其消息格式. 实验原理 Packet-In 使 ...

  9. VimFaultException A specified parameter was not correct configSpec.guestId

    VimFaultException A specified parameter was not correct configSpec.guestId 在对接VMware的环境中创建虚拟机报错 查看错误 ...

  10. php 两个数组,若键相同,则值合并

    <?php $arr1 = array('9' => '4.08', '10' => '0.10', '11' => '4.08', '12' => '0.01'); $ ...