Linux计划任务及压缩归档
计划任务介绍
自动执行,备份数据。
crontab 和 at :
at:它是一个可以处理仅执行一次就结束的指令
crontab:它是会把你指定的工作或任务,比如:脚本等,按照你设定的周期一直循环执行下去
计划任务的作用:是做一些周期性的任务,在生产中的主要用来定期备份数据
计划任务的安排方式分两种:
at : 一种是定时性的,也就是例行。就是每隔一定的周期就要重复来做这个事情
crontab : 一种是突发性的,就是这次做完了这个事,就没有下一次了,临时决定,只执行一次的任务
at一次性计划任务使用
at语法格式:at 时间
1. 下载at程序
[root@ken ~]# yum install at -y
2. 启动atd服务
[root@ken ~]# systemctl restart atd
[root@ken ~]# ps aux | grep atd
root 1166 0.0 0.1 25904 944 ? Ss 17:52 0:00 /usr/sbin/at -f
root 1168 0.0 0.1 112704 956 pts/0 S+ 17:52 0:00 grep --color=auto atd
atd 中的 d :一般服务程序的守护程序(daemon)后缀。
3. 设置at计划任务
[root@ken ~]# at 10:00 #如果是上午时间,后面加上am,比如9:20am
at> touch /tmp/test1 #输入你要执行的命令
at> <EOT> #按ctrl+d保存
job 1 at Fri Mar 1 10:00:00 2019
[root@ken ~]# at -l #查看计划任务
1 Fri Mar 1 10:00:00 2019 a root
[root@ken ~]# atq #查看计划任务
1 Fri Mar 1 10:00:00 2019 a root
在 at> 下,使用ctrl + backspace 执行命令输入的修改、删除操作。 执行完自动退出。
4. 删除计划任务atrm
[root@ken ~]# at -l #第一步查看计划任务,获取前面编号
1 Fri Mar 1 10:00:00 2019 a root
[root@ken ~]# atrm 1 (数字一) #删除计划任务加上编号
[root@ken ~]# at -l #再次查看计划任务发现已经删除
5. at计划任务的特殊写法
[root@ken ~]# at 20:00 2018-10-1 在某天
[root@ken ~]# at now +10min 在 10分钟后执行
[root@ken ~]# at 17:00 tomorrow 明天下午5点执行
[root@ken ~]# at 6:00 pm +3 days 在3天以后的下午6点执行
更改系统时间: # date -s "2019-3-18 10:44:00"
crontab定时任务的使用(很重要)
语法:#crontab -u -e
常用选项:
-l:list,列出指定用户的计划任务列表
-e:edit,编辑指定用户的计划任务列表,写入文件
-u:user,指定的用户名,如果不指定,则表示当前用户
-r:remove,删除指定用户的计划任务列表,删除文件
1. 查看进程是否启动,,默认开启crond
[root@ken ~]# ps aux | grep crond
root 621 0.0 0.3 126284 1600 ? Ss 17:46 0:00 /usr/sbin/crond -n
root 1194 0.0 0.1 112704 956 pts/0 S+ 18:05 0:00 grep --color=auto crond
2. 查看计划任务
[root@ken ~]# crontab -l
no crontab for root
工作时,接手一台服务器,首先 # crontab -l 回车。查询有哪些计划任务。
查看计划任务的格式 # vim /etc/crontab
# which ls 查找 ls 的绝对路径。在 crontab 中要写绝对路径。
3. 编写计划任务
计划任务的规则语法格式,以行为单位,一行为一个计划:
分 时 日 月 周 需要执行的命令
执行的命令建议写成绝对路径的格式!
例如:如果想要每天的0点0分执行reboot指令,则可以写成
0 0 * * * reboot
取值范围(常识):
分:0~59
时:0~23
日:1~31
月:1~12
周:0~7,0和7表示星期天
四个符号:
*:表示取值范围中的每一个数字
-:做连续区间表达式的,要想表示1~7,则可以写成:1-7
/:表示每多少个,例如:想每10分钟一次,则可以在分的位置写:*/10
,:(英文格式下的)表示多个取值,比如想在1点,2点6点执行,则可以在时的位置写:1,2,6
For:
问题1:每月1、10、22日的4:45重启network服务
# which systemctl 通过此操作找到 systemctl 的绝对路径:/usr/bin/systemctl
# crontab -e 回车
45 4 1,10,22 * * /usr/bin/systemctl systemctl restart network :wq 回车。(每月,周没有制定)
# crontab -l 查看此计划任务。
# crontab -r 删除此计划任务。
问题2:每周六、周日的1:10重启network服务
# crontab -e 回车
10 1 * * 6,7 /usr/bin/systemctl systemctl restart network (日、月没有指定)
#45 4 1,10,22 * * /usr/bin/systemctl systemctl restart network (当计划任务命令中有这条不想执行时,可在前面加入#,变为注释)
# crontab -l 查看此计划任务。默认显示 root 用户下的。
# crontab -r 删除此计划任务,此时改为注释的不能被删除。
For:
# useradd ken (在 root 下创建ken 用户,可用 ls 查看)
# crontab -u ken -e 对新建用户进行操作。
# crontab -l -u ken 查看此计划任务(不能用 -l 直接查看) or # cat ken
问题3:每天18:00至23:00之间每隔30分钟重启network服务
*/30 18-23 * * * systemctl restart network ( 日 月 周 没有指定)
问题4:每隔两天的上午8点到11点的第3和第15分钟执行一次重启
3,15 8-11 */2 * * reboot (月和周没有指定)
案例:真实测试案例,每1分钟往root家目录中的ken.txt中输一个123,为了看到效果使用追加输出
[root@ken ~]# crontab -e #编写计划任务
* * * * * /usr/bin/echo "123" >> /root/ken.txt 每分钟向ken.txt 中输入123
[root@ken ~]# tail -f ken.txt #查看计划任务执行结果 #tail -f 监控执行
123
123
4. 删除计划任务
[root@ken ~]# crontab -l
* * * * * echo "123" >> /root/ken.txt
[root@ken ~]# crontab -r
[root@ken ~]# crontab -l
no crontab for root
注意:在计划任务中,默认的最小单位就是分,不能再小了。
关于备份
每天晚上一点备份ken下的文件:
# which tar /usr/bin/tar
以时间命名创建一个时间命名的文件:
0 1 * * * /usr/bin/tar czf `touch $(date “+\%F”)` /ken ($加括号表示第二次操作)
以时间命名一个文件 # touch `date "+%F"` (反引号的为了显示日期)
# touch $(date "+%T") # ls
压缩归档
- 掌握归档的定义:归档(archiving)就是将许多文件(或目录)打包成一个文件。
- 了解归档的目的:归档的目的就是方便备份、还原及文件的传输操作。
- 掌握tar命令的功能:将多个文件(也可能包括目录,因为目录本身也是文件)放在一起存放到一个磁带或磁盘归档文件中。并且将来可以根据需要只还原归档文件中的某些指定的文件。
- 掌握tar命令的常用选项:
- c:创建一个新的tar文件。
- t:列出tar文件中目录的内容。
- x:从tar文件中抽取文件。
- f:指定归档文件或磁带(也可能是软盘)设备(一般都要选)。
- v:显示所打包的文件的详细信息,v是verbose的第1个字母。
- z:使用gzip压缩算法来压缩打包后的文件。
- j:使用bzip2压缩算法来压缩打包后的文件(文件压缩的更小)
常用选项组合:
压缩归档:czvf
解压:xzvf (v :显示执行过程)
1. 压缩归档
[root@ken ~]# mkdir test
[root@ken ~]# cd test
[root@ken test]# touch {1..10}.txt
[root@ken test]# tar czvf test.tar.gz ./*
./10.txt
./1.txt
./2.txt
./3.txt
./4.txt
./5.txt
./6.txt
./7.txt
./8.txt
./9.txt
[root@ken test]# ls
10.txt 2.txt 4.txt 6.txt 8.txt test.tar.gz
1.txt 3.txt 5.txt 7.txt 9.txt
2. 解压
[root@ken test]# rm -rf {1..10}.txt
[root@ken test]# ls
test.tar.gz
[root@ken test]# tar xzvf test.tar.gz
./10.txt
./1.txt
./2.txt
./3.txt
./4.txt
./5.txt
./6.txt
./7.txt
./8.txt
./9.txt
[root@ken test]# ls
10.txt 2.txt 4.txt 6.txt 8.txt test.tar.gz
1.txt 3.txt 5.txt 7.txt 9.txt
可以加上-C制定解压到那个目录
[root@ken test]# tar xvf test.tar.gz -C /tmp
./10.txt
./1.txt
./2.txt
./3.txt
./4.txt
./5.txt
./6.txt
./7.txt
./8.txt
./9.txt
[root@ken test]# ls /tmp
10.txt 2.txt 4.txt 6.txt 8.txt ks-script-8jIJc_ yum.log
1.txt 3.txt 5.txt 7.txt 9.txt vmware-root
Linux计划任务及压缩归档的更多相关文章
- Linux计划任务及压缩归档(week2_day1)--技术流ken
计划任务介绍 我们可以通过一些设置.来让电脑定时提醒我们该做什么事了.或者我们提前设置好,告诉电脑你几点做什么几点做什么,这种我们就叫它定时任务.而遇到一些需要执行的事情或任务.我们也可以通过命令来告 ...
- 末学者笔记--Linux计划任务及压缩归档
一.计划任务 1.介绍: (1)定义:简单说就是通过一些设置,来使linux系统定时执行一些操作与任务. (2)作用:一般可执行一些周期性操作,也可定期备份数据. (3)可使用的命令:常用为at和cr ...
- Linux计划任务与压缩归档
计划任务分为两种形式 第一种:定时性的:也就是例行,每隔一定的周期就要重复来做这个任务. 第二种:突发性的:临时决定,只执行一次的任务. 用到的命令有两个 at:它是一个可以处理仅执行一次的任务就结束 ...
- linux进阶之计划任务及压缩归档
本节内容 1. at一次性计划任务(atd) at 时间点 command ctrl+d:保存 -l:查看计划任务 atrm:删除计划任务 atq:查看计划任务 2. crontab周期性计划任务(c ...
- 20190409Liunx中计划任务及压缩归档week2_day1
计划任务介绍 我们可以通过一些设置.来让电脑定时提醒我们该做什么事了.或者我们提前设置好,告诉电脑你几点做什么几点做什么,这种我们就叫它定时任务.而遇到一些需要执行的事情或任务.我们也可以通过命令来告 ...
- linux下用tar命令将当前目录下文件按子目录压缩归档
作者:iamlaosong 日常工作中,我们常常需要用tar命令将历史文件压缩归档,再删除源文件,以便节省空间.如果压缩归档成一个文件,就比较简单,用一条命令即可,如命令:tar -czf bak20 ...
- 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理
目录 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理 17.1 计划任务-at-cron-计划任务使用方法 17.1.1 at计划任务的使用 17.1.2 查看和删除at将要执行 ...
- 第九章、文件与文件系统的压缩与打包 Linux 系统常见的压缩命令
Linux 系统常见的压缩命令: 在Linux中,压缩文件的扩展名大多是:『*.tar, *.tar.gz, *.tgz, *.gz, *.Z, *.bz2』 Linux 支持的压缩命令非常多,且不同 ...
- 【linux相识相知】压缩与打包
我们日常使用window的时候,经常会用到压缩与解压缩,如果要压缩一个文件,右击选择[添加到压缩文件],解压缩则右击选择[解压到当前文件夹],“点点点”就能完成.但是在一个没有装图形化界面的linux ...
随机推荐
- http验证
read -p "输入要添加的用户名: " USERNAME read -p "输入密码: " PASSWD printf "$USERNAME:$( ...
- jmeter笔记(5)--参数化--CSV Data Set Config
为了保证脚本的可移植性,我们需要把数据提取出来作为变量,变量可以分为两类: 公用变量:IP.端口.附件路径.CSV文件路径等: 测试变量:用户名.密码.用户ID.商品ID等 使用CSV Data Se ...
- SNOI 2019 字符串
SNOI 2019 字符串 题目 题解: 解法一: 记一个数组\(f\),\(f[i]=\min_j\ s[j]\neq s[j+1] (j\geq i)\),直接sort即可,复杂度\(O(nlog ...
- 洛谷P1066 2^k进制数(题解)(递推版)
https://www.luogu.org/problemnew/show/P1066(题目传送) (题解)https://www.luogu.org/problemnew/solution/P106 ...
- 虚拟机中使用centos7搭建ftp服务器
应用场景 本地windows作为客户端,虚拟机CentOS7作为服务器端,搭建FTP服务器,本地访问虚拟机实现文件的上传下载.如何在虚拟机安装centos7就不在赘述. 1.在centos7上安装vs ...
- bootstrap: 内联表单;
<form class="form-inline"> <div class="form-group"> <label for=&q ...
- C语言博客作业06——结构体&文件
C语言博客作业06--结构体&文件 1.本章学习总结 1.1思维导图 1.2.本章学习体会 在本周的学习中,我们学习了关于结构体和文件的内容.结构体的本身并不难,但以结构体为基础的链表还是让我 ...
- Springboot集成ECharts
ECharts 是中国的,也是世界的! ECharts官网: ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前 绝大部分浏览器(IE8 ...
- linxu下redis安装实战
redis官网地址:http://www.redis.io/ 最新版本:2.8.3 在Linux下安装Redis非常简单,具体步骤如下(官网有说明): 1.下载源码,解压缩后编译源码. $ wget ...
- SQLServer2012基于扩展事件的阻塞监控
一.前言 SQL阻塞Block是事务联机系统OLTP的产物.由于锁导致的资源等待,事务执行时间过长,直接影响业务:了解阻塞,发现阻塞,已作为DBA日常维护的重中之重. 通过dmv可以发现当前正在阻塞的 ...