命令格式:at时间(回车后会换行输入待执行的命令,命令输入完毕按ctrl+d会构建定时任务或延时任务)
定时任务:at指定时间举例:at01:31在1:31时侯执行
延时任务:at延时时间举例:atnow+1min一分钟之后执行
1.1定时任务:1:31分时在/mnt目录下构建文件file1
为了易于定时任务疗效的查看,使用watch命令设定每1秒进行对/mnt目录的监控:
设定时间和命令后执行ctrl+d可以构建任务,其中1为任务编号:
疗效:在01:31时,可以在监控界面里看见文件早已被构建即任务早已准时执行
1.2延时任务:在一分钟后即01:33构建文件file22:
疗效:文件file22被构建:
1.3其他的at常用命令
1>at-c编号#查看正式进行的任务的详尽信息:
在02:00设定一个任务,可以看见任务编号为3,at-c3可以查看任务的内容,任务内容会在指令结果的最后面显示:
可以看见任务的内容为构建文件file3:
2>at-l编号#查看正式执行的任务时间:
3>at-r编号#取消正式执行的任务
可以看见任务取消以后,未能再查看到任务:
1.4使用黑名单和白名单进行设置指定用户对at指令的使用权限:
黑名单/etc/at.deny
白名单/etc/at.allow
当空白白名单生效时redhat linux下载,所有普通用户不得执行at操作
白名单存在时,系统不辨识黑名单
举例:
在/etc/目录下构建黑名单:
在黑名单中写入限定权限的用户名称wetsos和linux,退出保存后该名单上面的用户难以使用at指令:
切换到黑名单中的普通用户执行at指令,显示用户的at指令不被准许使用:
有黑名单的存在,就有白名单的存在,黑名单上面的用户不能使用at指令,白名单指只有在白名单上面的用户可以执行at指令(超级用户除外),当白名单为空时,所有普通用户不得执行at指令。解除白名单的限制则须要删掉掉白名单这个文件:
可以见到白名单上面的westos和linux用户可以执行at指令。
刚刚在执行黑名单时,黑名单上面的严禁用户是westos和linux,但当同样的用户放到白名单时,黑名单上面与白名单相同名称的用户的权限限制将被解除,也就是说白名单的优先级比黑名单高,当白名单存在时linux at 执行脚本linux at 执行脚本,相同名称的黑名单用户限制将失效。
2.crontab指令的定时任务:
crontab-uroot-e#以超级用户身分设定定时文件
crontab文件中的星号意义:
分钟小时天月周
*****#每时每刻执行
*8-17***#每晚的8点到17点执行
*/28-171,15**#每月的1号和15号的8点到17点,每2分钟执行一次
*/208-171,153-53#3月到5月的每位周日,1号,15号的8点到17点linux虚拟主机,每两分钟执行一次
在crontab-uroot-e指令执行后的界面里,编辑定时任务的具体内容,其中分为5部份:分钟小时天周月,不特定指出的部份用*取代:
2.1crontab-uroot-l#查看正式执行的定时任务
在02:03时指定文件被构建表示任务早已执行:
2.2crontab-uroot-r消root用户正式执行的定时任务
cat/var/spool/cron/root#查看用户级别的定时任务
同样crontab指令的权限设置也可以通过黑名单和白名单来决定,设置方法与at指令的内容和情况相同:
黑名单:/etc/cron.deny
白名单:/etc/cron.allow
同样还有使用脚本构建定时任务的方法:
vim/etc/cron.d/westos#在/etc/cron.d目录下构建wetsos这个脚本
编辑脚本内容:
*****roottouch/mnt/file1#以超级用户的身分每分钟构建文件(在crontab-e命令中,不须要指出用户,通常默认为执行指令的用户,但在写入指令时须要加上指令所在的目录/bin。在cron.d脚本中须要指出用户,指令不须要添加目录/bin)
每晚的02:05以超级用户的身分构建文件:
查看任务:cat/etc/cron.d/westos
2.3.指定用户所建文件的定时删掉:
1.vim/usr/lib/tmpfiles.d/westos.conf
编辑:d/mnt/westos1777rootroot5s#5s以后超级用户删掉/mnt/westos目录下的文件
2systemd-tmpfiles--creat/usr/lib/tmpfiles.d/*#执行脚本文件
3touch/mnt/westos/file{1..5}#在指定目录下构建文件
4systemd-tmpfiles--clean/usr/lib/tmpfiles.d/*#脚本文件执行后,新建的超过规定时间的文件将被删掉