Linux计划任务详解,很详细,每一行命令都有相对应的白话解释。

计划任务

计划任务的作用是:做一些周期性的任务,目前最主要的用途是定期备份数据。

计划任务主要分为一次性调度执行at和循环调度执行cron,下面我就围绕着at和cron来讲解。

一次性调度执行at

at一次性调度的语法格式是:at timespec

timespec示例:一:at now +1min 一分钟后执行计划任务

二:at 16:00 tomorrow  明天下午16点执行

三:at 10:00 1/1/2021 (在2021年的1月1日上午十点执行)

四:at 10:00 AM tomorrow (在明天上午10点执行)

五:at 10:00 +4 days (在四天后的上午十点执行)

at 查询任务的语法是:atq

at 删除任务的语法是:atrm 任务ID

下面是实测环节,设置两个定时创建用户的任务,一个1分钟后创建,一个明天创建,查询任务,验证结果,把明天创建用户的任务删除。

[root@localhost ~]# at now +1 min       //at命令在1分钟后创建一个用户qqt
at> useradd qqt                         //
at> <EOT>                               //按Ctrl+d结束
job 4 at Tue Aug 11 01:34:00 2020       //
[root@localhost ~]# at now +30 min      //at命令在30分钟后创建一个用户bbt
at> useradd bbt                         //
at> <EOT>                               //
job 5 at Tue Aug 11 02:03:00 2020       //
[root@localhost ~]# atq                 //查看计划任务列表
4	Tue Aug 11 01:34:00 2020 a root     //
5	Tue Aug 11 02:03:00 2020 a root     //
[root@localhost ~]# id qqt              //查看qqt用户
uid=1675(qqt) gid=1675(qqt) 组=1675(qqt)
[root@localhost ~]# atq                
5	Tue Aug 11 02:03:00 2020 a root
[root@localhost ~]# atrm 5              //删除任务号5的计划任务
[root@localhost ~]# atq                 //查看下任务列表还有没有任务5的计划任务

 循环调度执行cron

cron的概念和crontab是不可分割的。crontab是一个命令,常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“/etc/crontab”文件中,以供之后读取和执行。

crond程序运行是计划任务执行的根本,因此首先要查看crond状态命令在下面

[root@localhost ~]# systemctl status crond.service

cron管理方式有三种,创建计划,查询计划,删除计划,分别是以下三条命令;注:管理员可以使用 -u username, 去管理其他用户的计划任务;计划任务存储位置在/var/spool/cron/中

[root@localhost ~]# crontab -e    //创建计划任务
[root@localhost ~]# crontab -l    //查询计划任务
[root@localhost ~]# crontab -r    //删除计划任务

cron语法格式是:

 | .------------- 分钟 (0 - 59)
 |  | .---------- 小时(0 - 23)
 |  |   | .------- 日(1 - 31)
 |  |  |   | .---- 月(1 - 12) OR jan,feb,mar,apr ...
 |  |  |   |   | 周(0 - 6) (周日=0 or 7) 
 * * * * * 命令

示例:0 * * * * /mysql_back.sh   每小时的0分执行       0 2 1,4,6 * * /mysql_back.sh  每月的1,4,6日的2点整执行

*/5 * * * * /mysql_back.sh      每五分钟执行       0 2 5-9 * * /mysql_back.sh  每月5日到9日的两点整执行

* * * * * /mysql_back.sh   每分钟执行        0 2 * * * /mysql_back.sh    每天两点整执行

0 2 14 * * /mysql_back.sh      每月14号的2点整执行     0 2 14 2 * /mysql_back.sh   2月14日2点整执行

0 2 * * 5 /mysql_back.sh       不写月日,仅周生效,每月的周五,两点执行

0 2 2 6 5 /mysql_back.sh     书写月和日,月或日,月日周均生效 6月2日的两点整执行和6月的周五两点整执行

示例,创建一个每隔一分钟执行创建文件的计划任务

[root@localhost ~]touch 9.sh    //创建一个文件9.sh
[root@localhost ~]echo "/usr/bin/touch /root/`date +%F-%H-%M-%S`.txt">9.sh
//向9.sh中写入程序,/usr/bin/touch 这是一个创建文件命令,您也可以换成其他命令;/root/ 这是创建的文件存放的位置,存放在/root/下,您也可以更改;`date +%F-%H-%M-%S`.txt 这是创建文件的名称,%F等价于 %Y-%m-%d即年月日,%H-%M-%S是时分秒,.txt是文件名的一部分
[root@localhost ~]# chmod +x 9.sh     //为文件9.sh加上执行权限
[root@localhost ~]# crontab -e  //创建任务计划
* * * * * /root/9.sh        //在任务计划中写上这段话,每分钟执行一次/root/9.sh这个命令
[root@localhost ~]# crontab -l    //查看循环计划任务
* * * * * /root/9.sh
2020-08-11-02-21-02.txt     //这是计划任务自动创建的文件
2020-08-11-02-22-01.txt
2020-08-11-02-23-01.txt
[root@localhost ~]# crontab -r //删除计划任务,否则他会一直自动创建文件。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Linux top命令是一个非常常用的系统性能监控工具,它可以实时显示系统的CPU、内存、进程等信息,帮助用户快速了解系统的运行状态和性能瓶颈。下面是top命令的用法详解: 1. 命令格式 top命令的基本格式为: top [选项] 2. 命令选项 top命令的常用选项包括: - -d:指定刷新时间,单位为秒,默认为3秒; - -b:以批处理模式运行,输出结果到文件; - -c:显示完整的命令行信息; - -H:显示线程信息; - -p:指定要监控的进程ID; - -n:指定刷新次数,达到指定次数后自动退出; - -u:指定要监控的用户。 3. 命令输出 top命令的输出结果包括: - 第一行:系统时间、运行时间、登录用户数、系统负载; - 第二行:总进程数、运行中进程数、睡眠中进程数、停止进程数、僵尸进程数; - 第三行:CPU使用情况; - 第四行:内存使用情况; - 后续行:各个进程的详细信息,包括进程ID、CPU占用率、内存占用率、进程状态、运行时间、命令行等。 4. 命令操作 在top命令的输出结果中,可以使用以下操作: - k:杀死指定进程; - r:修改指定进程的优先级; - u:显示指定用户的进程; - q:退出top命令。 总之,top命令是一个非常实用的系统性能监控工具,可以帮助用户快速了解系统的运行状态和性能瓶颈,同时也提供了一些操作功能,方便用户对系统进行管理和调优。 ### 回答2: Linux中的top命令是一个非常常用的系统监控工具,它可以以交互模式或批处理模式显示当前正在运行的进程的信息,如CPU占用率、内存占用率、进程状态等,是系统管理员或开发人员必备的工具之一。 1. 命令格式: `top [-] [d interval] [q] [pid]` -参数:可以通过+和-来控制升降序。 -d:刷新间隔时间,单位为秒。 -q:直接退出。 -pid:指定查看某个进程的信息。 2. top命令输出信息 top命令输出的信息非常详细,包括: 进程ID(PID)、用户(USER)、进程状态(PR)、虚拟内存(VIRT)、物理内存(RES)、共享内存(SHR)、CPU占用(%CPU)、内存占用(%MEM)、进程名称(COMMAND)等。 其中,VIRT表示虚拟内存占用了多少物理内存(包含共享内存),RES表示物理内存占用大小(不包含共享内存),SHR表示共享内存占用大小。 PR表示进程的运行优先级。 3. top命令使用技巧 (1)top在交互模式下可以通过键盘操作控制输出结果,例如: u: 切换显示用户 p: 切换显示进程 M: 切换按内存排序 T: 切换按CPU排序 q: 退出top (2)top在批处理模式下可以将输出结果保存到文件中,例如: top -n 1 > top.txt 该命令将top输出结果保存到top.txt文件中。 (3)top可以通过pid参数指定查看某个进程的信息,例如: top -p pid 该命令将查看进程ID为pid的进程信息。 总之,top命令Linux系统中非常实用的工具之一,可以方便地监控系统性能和进程状态,熟练掌握top命令的使用方法,对于系统管理员或开发人员而言都是非常有益的。 ### 回答3: Linux top命令是一款实时监控系统资源使用情况的工具,也是Linux系统管理员必须掌握的基本工具之一。它可以在命令行下运行,展示当前系统中占用CPU、内存等资源最高的进程。 使用top命令,首先需要打开终端,输入top命令,就可以看到系统进程的实时信息。在top界面中,通常会显示如下信息: 1.系统整体信息 系统整体信息主要包括:系统当前时间、运行时间、正在运行的进程数、负载平均值等。 2.进程列表 进程列表包括每个进程的进程ID、进程名、进程状态、占用CPU的百分比以及占用内存的百分比。 3.进程详情 若要查看某个进程的详细信息,可以使用快捷键“Shift + M”来按照内存占用排序,或者“Shift + P”来按照CPU占用排序。在这个模式下,可以看到进程的线程数、虚拟内存与物理内存的使用情况以及进程的启动命令等信息。 此外,还可以通过快捷键“H”来查看进程的线程详情。 常见参数及使用方式: 1. 指定显示进程数量:top -n 10表示显示当前系统占用资源最高的10个进程。 2. 批处理模式:top -b表示以批处理模式运行,可以将top命令的输出结果保存到文件中。 3. 指定刷新频率:top -d 5表示每5秒刷新一次进程列表。 4. 只显示某个用户的进程:top -u username表示只显示username用户的进程列表。 5. 只显示某个进程:top -p pid1,pid2...表示只显示指定的进程列表。 总之,Linux top命令是一款非常强大的系统监控工具,通过加深对top命令的使用和理解,可以更好地掌控系统的整体运行状况,及时识别和解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值