首先介绍一下cron这个定时备份的工具:

crontab -e : 运行文字编辑器来设定时程表,内定的文字编辑器是 VI。假设你想用别的文字编辑器。则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比方说 setenv VISUAL joe) 

crontab -r : 删除眼下的时程表

crontab -l : 列出眼下的时程表

crontab file [-u user]-用指定的文件替代眼下的crontab。

时程表的格式例如以下 : 

f1 f2 f3 f4 f5 program 

当中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日。f4 表示月份。f5 表示一个星期中的第几天。

program 表示要运行的程序。 

当 f1 为 * 时表示每分钟都要运行 program,f2 为 * 时表示每小时都要运行程序,其余类推 

当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要运行,f2 为 a-b 时表示从第 a 到第 b 小时都要运行,其余类推 

当 f1 为 */n 时表示每 n 分钟个时间间隔运行一次,f2 为 */n 表示每 n 小时个时间间隔运行一次,其余类推 

当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要运行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要运行,其余类推 

使用者也能够将全部的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。

再介绍一下git这个非常man工具:

git有2种方式提交,下载,一种是http,一种是ssh
这里仅仅介绍下不须要输入帐号password应该怎么做:
ssh的话,通常会有个ssh key,把你的key拷贝到github上去就可以,就是密钥,远程不须要输入password
还有一种http的方式则  git config --global credential.helper store 长期记住password
这是为了方便定时自己主动提交,至于其它的操作读者自行百度

最后通过Mail提交小附件也不错:

用mutt发邮件: echo "`date`" |mutt -s "WorkBack" xxx@gmail.com -a files
files为附件,附件能够用tar打包,这仅仅适合打包代码备份,太大发不出去.
也能够直接配好msmtp,用mail发邮件.

打造定时备份:

假如你须要每天下午5点20的时候备份几个文件夹
crontab能够这样写:
  1. # m h  dom mon dow   command
  2. 20 17 * * * /home/qx/xiaojunyu/temp/back.sh</span>

back.sh能够这样写:

  1. #!/bin/bash
  2. # *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
  3. #  > Author: xiaojunyu/LunaW
  4. #  > Mail  : xiaojunyu5201314@163.com
  5. #  > Gmail : lunaw.org@gmail.com
  6. #  > Blog  : http://blog.csdn.net/lunaw
  7. #  > GitHub: https://github.com/lunaw
  8. #  > Web   : http://lunaw.org http://lunaw.net
  9. # *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
  10. cd /home/qx/xiaojunyu/work
  11. echo "`date`" >>  README.md
  12. git pull origin master ;git add -A ;git commit -m "`date`" ;git push origin master
  13. cd /home/qx/xiaojunyu/temp
  14. echo "`date`" >>  README.md
  15. git pull origin master ;git add -A ;git commit -m "`date`" ;git push origin master
  16. cd /home/qx/xiaojunyu/
  17. tar -zcvf work.tar.gz work/
  18. #tar -zcvf temp.tar.gz temp/
  19. date '+%Y-%m-%d' | mutt -s Work_backup sd17@fastnet.net.cn -a work.tar.gz
  20. date '+%Y-%m-%d'| mutt -s Work_backup xiaojunyu5201314@qq.com -a work.tar.gz
  21. rm -f work.tar.gz

仅仅是非常easy的顺着备份,没有写非常复杂的功能,推荐git的方式,mail当作一个小备份,git能够依据整个文件夹的修改情况进行提交,比較节约资源

当然,还有非常多用途,这仅仅是冰山一角

关于工作,学习中定时备份的几个方法(cron,git,mail)的更多相关文章

  1. linux下使用crontab定时备份MYSQL数据库的方法:

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

  2. centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课

    centos  lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress  安装phpmyadmin  定时备份mysql两种方法  第二十五节 ...

  3. Android中定时执行任务的3种实现方法

    在Android开发中,定时执行任务的3种实现方法: 一.采用Handler与线程的sleep(long)方法(不建议使用,java的实现方式)二.采用Handler的postDelayed(Runn ...

  4. windows 下mysql每日定时备份的几种方法

    第一种:新建批处理文件 backup.dat,里面输入以下代码:  代码如下 复制代码 net stop mysql xcopy "C:/Program Files/MySQL/MySQL ...

  5. [转]mysql自动定时备份数据库的最佳方法-支持windows系统

    网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自 ...

  6. windows系统——mysql自动定时备份数据库的最佳方法

    网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自 ...

  7. win-server下定时备份oracle数据库实现方法

    1.在e盘建立一个“oracle_backup”的文件夹,文件夹下再建两个文件夹分别为:“new”,“old”,然后在oracle_backup文件夹中新建一个bat文件,取名“expdb.bat”, ...

  8. vue开发学习中遇到的问题以及解决方法

    1:node-sass 安装失败,可使用 cnpm 安装 npm install cnpm -g --registry=https://registry.npm.taobao.org cnpm -v ...

  9. Linux下定时备份数据库

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

随机推荐

  1. 2016.04.07,英语,《Vocabulary Builder》Unit 11

    cant, from the Latin verbs canere and cantare, meaning 'sing'. by way of French, add an h to the roo ...

  2. 在Android系统中修改Android.mk使其同时编译rgb2565和rgb2888(向out/host/linux-x86/bin/下新增加一个工具命令)【转】

    本文转载自:http://blog.csdn.net/mu0206mu/article/details/7514559 在Android系统中修改android.mk使其同时编译rgb2565和rgb ...

  3. python spark 求解最大 最小 平均

    rdd = sc.parallelizeDoubles(testData); Now we’ll calculate the mean of our dataset.   1 LOGGER.info( ...

  4. thymeleaf 引入js css 无效

    转自:https://blog.csdn.net/qq_33833327/article/details/81388502

  5. 多个submit

    <html><body> <form action="welcome.php" method="post">Name: &l ...

  6. Hdu-5992 2016ACM/ICPC亚洲区青岛站 K.Finding Hotels KDtree

    题面 题意:二维平面上有很多点,每个点有个权值,现在给你一个点(很多组),权值v,让你找到权值小于等于v的点中离这个点最近的,相同的输出id小的 题解:很裸的KDtree,但是查询的时候有2个小限制, ...

  7. Hadoop MapReduce编程 API入门系列之挖掘气象数据版本2(十)

    下面,是版本1. Hadoop MapReduce编程 API入门系列之挖掘气象数据版本1(一) 这篇博文,包括了,实际生产开发非常重要的,单元测试和调试代码.这里不多赘述,直接送上代码. MRUni ...

  8. mvc 伪静态任意扩展名的实现方法

    比如:要实现 http://localhost:60291/home/geta/1212.html 或者 .abc 任意扩展名 完成两步即可. 第一步修改路由: public static void ...

  9. Java基础之多线程简述

    首先,要辨析进程与线程的概念: 进程是程序执行的过程,它持有资源和线程,相对于程序本身而言具有动态性. 线程是系统中最小的执行单元,同一个进程中可能有多个线程,它们共享该进程持有的资源.线程的通信也称 ...

  10. javascript中in用法介绍

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...