鲵之风采 2019-06-26
如题,最近想到自己在电脑上自定义的设置实在太多,想到以后万一换电脑,或者电脑出意外了怎么办,数据实在是太重要了。有什么办法呢?而且不需要经常的提醒自己去手动备份。
用到的命令再linux或者类Unix系统下有一个crontab
命令,输入sudo crontab -e
(最好加上sudo,避免权限问题)
因为我在这里已经有定义了一个运行backup.sh脚本的定时任务,如果你之前没有定义过的话,这里应该是空白的。
command
M: 分(0-59)
H:时(0-23)
D:天(1-31)
m: 月(1-12)
d: 周(0-6) 0为星期日
sudo crontab -l 显示目前所有的任务
sudo crontab -r 删除所有的任务
sudo crontab -e 编辑任务
举例:
如果将5个时间设置点都设为*
号的话表示,每分钟执行一车后面的这个命令* * * * * date>>echo "done!"
20 12 * * 0,6 date>>/Users/TianYu/我的坚果云/myScript/backup.sh
我这个任务设置的意思是,每个星期的周六和周日的中午12点20分执行后面这个backup.sh脚本,写好之后保存退出。
#! /bin/bash #备份.zshrc文件 cd ~ cp -rf /Users/TianYu/.zshrc /Users/TianYu/我的坚果云 cd /Users/TianYu/我的坚果云/ mv .zshrc zshrc备份文件 echo "backup task done!"
我这个脚本是用来保存.zshrc
的zsh的配置文件,里面就是写一些需要手工写的命令,卸载这个文件里,通过设置定时任务,定时调用这个脚本来实现自动备份。而我采用的是坚果云的同步盘,当然你也可以自己选择喜欢的同步网盘。只要往同步文件夹中写入文件就会自动同步到云端,美滋滋!
最后一步,也是最重要的,给这个脚本运行权限。终端中输入:sudo chmod +x ./backup.sh
到时候每周的周六和周日都会自动保存到云端了,但是有一个注意点,一旦电脑在要运行定时任务时处于关机或者睡眠状态时是无法执行这个任务的,所以最好选择自己一定会开着电脑的时间将其设置为备份时间。