美文网首页
day17-2019年3月22日

day17-2019年3月22日

作者: Linux_wu_sir | 来源:发表于2019-03-22 19:28 被阅读0次

1)步骤拆分

2)框架思维

3)能复制粘贴就复制粘贴

定时任务

什么是定时任务?

周期性的执行任务计划的软件

crond 

为什么要使用?

使用定时任务可以每天,每小时,按需求重复的执行一项工作

例如:备份 都是0点以后

需要写一个程序实现自动备份,然后让定时任务软件帮助执行

怎样使用?

(1)系统定时任务计划

1、不用管理员干预,系统可以自动执行

2、也可以利用系统任务为管理员服务

[root@oldboy_template-2 logrotate.d]# 

[root@oldboy_template-2 logrotate.d]# ll /var/log/messages*

-rw-------  1 root root 1216088 Mar 22 10:10 /var/log/messages

-rw-------. 1 root root 1973890 Mar 20 09:46 /var/log/messages-20190320

[root@oldboy_template-2 logrotate.d]# ll /etc/cron.daily/logrotate   /etc/logrotate.conf 

-rwx------. 1 root root 219 Oct 31 03:12 /etc/cron.daily/logrotate

-rw-r--r--. 1 root root 662 Jul 31

sar 查看cpu使用情况  

(1)用户定时任务计划

在Linux系统中

cron是定时任务的软件名,crond是服务进程名,crontab命令是用来设置定时任务规则的配置命令

要想配置定时任务,首先需要启动crond这个服务

[root@oldboy_template-2 logrotate.d]# systemctl status crond

● crond.service - Command Scheduler

   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)

   Active: active (running) since Fri 2019-03-22 08:26:30 CST; 1h 52min ago

 Main PID: 6457 (crond)

   CGroup: /system.slice/crond.service

           └─6457 /usr/sbin/crond -n

Mar 22 08:26:30 oldboy_template-2 systemd[1]: Started Command Scheduler.

Mar 22 08:26:30 oldboy_template-2 crond[6457]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 1% if used.)

Mar 22 08:26:30 oldboy_template-2 crond[6457]: (CRON) INFO (running with inotify support)

crontab命令是用来设置定时任务规则

内容存放位置/var/spool/cron/用户名

以当前用户名作为文件名

-l list

-e edit

-u user

编写定时任务的语法:            

# Example of job definition:

# .---------------- minute (0 - 59)

# |  .------------- hour (0 - 23)

# |  |  .---------- day of month (1 - 31)

# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...

# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# |  |  |  |  |

# *  *  *  *  * command to be executed

特殊符号

* 每

- 连续区间

, 列举

/n n是数字

定时任务对%的要求,百分号要转义\%

一般调用脚本

mkdir /server/scripts -p

运维规范:

脚本位置:/server/scripts

软件位置:/server/tools

编译位置:/application/软件名字-版本-然后要软链接

命令行执行

/bin/sh /server/scripts/bak.sh 可以不加执行权限

1、命令行执行

cd /var/www

tar zcf /data/html_$(date +%F).tar.gz  ./html

2、尽量用脚本文件实现

#mkdir /server/scripts -p #存放脚本的文件

cd /server/scripts

#cat bak.sh

tar zcf /data/html_$(date + %F).tar.gz ./html

命令行执行

/bin/sh /server/scripts/bak.sh 

3、编辑定时任务

#bak html dir by wu at 20201111

00 00 * * * /bin/sh /server/scripts/bak.sh &>/dev/null

[root@oldboy /server/scripts]#crontab -l|tail -2

#bak html dir by oldboy at 20201111

00 00 * * * /bin/sh /server/scripts/bak.sh &>/dev/null

4、检查正式结果

[root@oldboy /server/scripts]#ls -l /data

要领:

为定时任务添加必要的注释(时间 人 地点 做了什么)

所有定时任务尽量用脚本实现

在脚本前加/bin/sh 防止脚本没有权限,导致无法执行

定时任务结尾注意添加 >/dev/null 2>&1

在指定用户下执行定时任务(用户权限最小化)

不要随意打印输出

定时任务要放在规范的目录下

规范操作过程,减少出错

执行命令全路径

时间变量%要反斜线转义(只有定时任务时需要)

若脚本中调用了系统环境变量,需要重新定义

出错或无法执行检查/var/log/cron日志文件

要领1:为定时任务规则添加必要的注释

要领2:所有的定时任务尽量都以脚本的形式执行

要领3:在执行的shell脚本前加上/bin/sh

要领4:定时任务中命令或脚本的结尾加>/dev/null 2>&1

要领5:在指定用户下执行相关定时任务

要领6:生产任务计划程序中不要随意打印输出信息,有输出的信息去掉

要领7:定时任务执行的脚本要存放到规范路径下

要领8:配置定时任务要规范操作过程,减少出错

要领9:定时任务脚本中程序命令及路径尽量用全路径

要领10:时间变量%号要用反斜线转义(只有定时任务里是命令时需要)

要领11:若脚本中调用了系统环境变量,要重新定义

要领12:出错或无法执行,检查/var/log/cron日志文件

相关文章

  • day17-2019年3月22日

    1)步骤拆分 2)框架思维 3)能复制粘贴就复制粘贴 定时任务 什么是定时任务? 周期性的执行任务计划的软件 cr...

  • 年,年,年

    忽然就是腊八节了,朋友做了很多腊八蒜,炸了藕盒和带鱼送来,年的味道就出来了。 旧日的新年像一幅幅画卷在心里展开,浓...

  • 年!年!年!

    2016年2月10日 18:44 又是一年过年,对于我这种不太喜欢热闹的人,简直是一场灾难。那种感觉,就是你想听久...

  • 年,年,年!

    小时候,最期待的就是过年了。 每年一到农历十二月,家家户户都已经在为过年做准备了。光做吃的,就有很多种,做豆腐,油...

  • 年  年

    这些年,又些年。年年 岁岁

  • 年?年。

    裹着厚重的大围巾,走在再熟悉不过的街道上,小口小口地呼吸着充斥着年味的冰冷的空气。无意间瞥见超市门口早已挂上的一排...

  • 年~年~年~——春节之感

    7天的春节就这么过完了如果用一个字来形容这几天的感受,你会用什么呢? 对我而言,最先印入脑海的是“累”! 如果用两...

  • 我的✔✘年✘年✘年

    2012年✘2016年|QQ空间Day1|我的年少 2012年✘2016年|@微博Day1| 我的真爱 2015年...

  • 7年7年7年7年

    假如以7年为一个单元记录自己的人生,你想过: 1.自己的人生会有几个7年? 2.第几个7年是你成功或失败人生的关键...

  • 年味儿&年

    小年 夜不能寐 思绪又起 转眼人生二十载 匆匆忙忙又过年 现今的年已无年味儿 街坊邻里几回得见 亲朋好友 也是鸟无...

网友评论

      本文标题:day17-2019年3月22日

      本文链接:https://www.haomeiwen.com/subject/batdvqtx.html