linux计划任务ppt,Linux操作系统--第14次 计划任务.ppt

2023-05-16

计划任务

在Linux操作系统中,除了用户即时执行的命令操作以外,还可以配置在指定的时间、指定的日期执行预先计划好的系统管理任务(如定期备份、定期采集系统检测数据等)。通过调度安排,指定任务运行的时间或者场合,到时系统会自动完成这一切工作,该过程我们称之为计划任务。通常Linux系统默认的安装了相应的软件包,通过atd和crond这两个系统服务实现一次性、周期性计划任务的功能,并分别通过at、crontab命令进行计划任务的设置。

计划任务概述

定时作业管理 —at作业

at命令使用方法

at –l #显示所提交的作业

清楚作业

at –r Id #清除作业

at使用权限控制

etc/at.allow和/etc/at.deny文件:如果/etc/at.allow文件存在的话,那么只有在其中列出的用户才可以使用at命令;如果该文件不存在,那么将检查/etc/at.deny文件是否存在,在这个文件中列出的用户均不能使用该命令。如果两个文件都不存在,那么只有超级用户可以使用该命令;空的/etc/at.deny文件意味着所有的用户都可以使用该命令,这也是默认状态。

Cron是系统主要的调度进程,可以在无需人工干预的情况下运行作业,对应该进程的Crontab命令允许用户提交、编辑或删除相应的作业,每个用户都可以有一个Crontab文件来保存调度信息。

crontab调度详解

crontab文件的内容是需要执行的命令和时间,该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下:

分时日月星期要运行的命令

分一小时中的哪一分钟,取值范围0~59

时一天中的哪个小时,取值范围0~23

日一月中的哪一天,取值范围1~31

月一年中的哪一月,取值范围1~12

星期一周中的哪一天,取值范围0~6,0表示星期天

crontab调度详解

1、书写注意事项

书写crontab文件中的命令条目时,需要注意以下事项:

(1)每个域均不能为空,必须填入,如果遇到不知道的值使用通配符“*”表示;

(2)每个时间段均可以指定多个值,不连续的用“,”间隔,连续的使用“-”间隔

(3)命令部分应该给出绝对路径,避免路径问题出现错误

(4)用户必须具有运行所对应的命令或程序的权限

crontab调度详解

2、crontab条目示例

根据crontab命令格式及书写注意事项,给出以下示例供学习。

(1)每晚21:30重启apache服务

30 21 * * * /usr/local/etc/rc.d/lighttpd restart

(2)每周一,三,五的下午3:00重新启动系统

00 15 * * 1,3,5 shutdown -r

(3)每小时的10分,40分将/home/jacky目录下的messagefile文件广播给所有用户

10,40 * * * * /usr/bin/wall

(4)每小时的1分执行用户目录下的bin/account这个指令:

1 * * * * bin/account

(5)每年的3月和6月,2号到8号的7点20分和7点50分执行/bin/date这个指令,并把结果添加在backlog.txt这个文件之后

20,50 7 2-8 3,6 * /bin/date >>backlog.txt

crontab调度详解

crontab命令用于生成、编辑、显示或删除cron进程所需要的crontab作业,一个 cron 作业是一个命令,其运行是由cron守护程序在规则的调度间隔执行的。其命令格式如下:

crontab [ -e [UserName] | -l [UserName] | -r [UserName] | -u [UserName]| File ]

各参数选项的作用如下:

-e使用编辑器编辑当前的crontab文件;

-l显示crontab文件的内容;

-r删除crontab文件;

-u指定用户名。

crontab命令使用方法

创建crontab文件

方法一

首先利用vi创建cron作业列表文件,文件命名为cronfile1 (这个文件名随意起)

按规定格式创建好任务文件

用命令行crontab cronfile1把它写入“/var/spool/cron/username”文件中

方法二

用crontab –e就会自动进入vi编辑器中

按规定格式编辑好任务:wq退出就保存为“/var/spool/cron/username”文件

提交创建好的crontab文件

crontab jackycron

该文件已经提交给cron进

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux计划任务ppt,Linux操作系统--第14次 计划任务.ppt 的相关文章

  • 调用 printf 系统子例程在汇编代码中输出整数错误[重复]

    这个问题在这里已经有答案了 来回 在windows7控制台窗口中运行gcc s2 asm 然后生成一个exe文件 运行a exe 然后崩溃 为什么 s2 asm 代码由以下源代码生成 int m m 1 iprint m s2 asm请参考
  • Google BQ:运行参数化查询,其中参数变量是 BQ 表目标

    我正在尝试从 Linux 命令行为 BQ 表目标运行 SQL 此 SQL 脚本将用于多个日期 客户端和 BQ 表目标 因此这需要在我的 BQ API 命令行调用中使用参数 标志 parameter 现在 我已经点击此链接来了解参数化查询 h
  • python获取上传/下载速度

    我想在我的计算机上监控上传和下载速度 一个名为 conky 的程序已经在 conky conf 中执行了以下操作 Connection quality alignr wireless link qual perc wlan0 downspe
  • 使用 \r 并打印一些文本后如何清除控制台中的一行?

    对于我当前的项目 有一些代码很慢并且我无法使其更快 为了获得一些关于已完成 必须完成多少的反馈 我创建了一个进度片段 您可以在下面看到 当你看到最后一行时 sys stdout write r100 80 n I use 80覆盖最终剩余的
  • Linux 上的 Pervasive ODBC 错误 [01000][unixODBC][驱动程序管理器]无法打开 lib '/usr/local/psql/lib/odbcci.so':找不到文件

    我正在尝试让 Pervasive v10 客户端 ODBC 在 Centos 6 上运行 据我所知 没有 64 位 ODBC 客户端 因此我必须使用 32 位客户端 我终于成功安装了它 但尝试使用时出现以下错误 isql v mydsn 0
  • 尽管 if 语句,Visual Studio 仍尝试包含 Linux 标头

    我正在尝试创建一个强大的头文件 无需更改即可在 Windows 和 Linux 上进行编译 为此 我的包含内容中有一个 if 语句 如下所示 if defined WINDOWS include
  • 使用非规范地址检索内存数据会导致 SIGSEGV 而不是 SIGBUS

    我无法使用以下汇编代码产生 总线错误 这里我使用的内存地址不是合法的 规范地址 那么 我怎样才能触发该错误呢 我在带有 NASM 2 14 02 的 Ubuntu 20 04 LTS 下运行这段代码 但它会导致负载出现 SIGSEGV 分段
  • 如何根据标签将单个 XML 文件拆分为多个

    我有一个带有标签的 XML 文件 我想像这样分割文件
  • 添加文件时运行 shell 命令

    我的 Linux 机器上有一个名为 images 的文件夹 该文件夹连接到一个网站 该网站的管理员可以向该网站添加图片 但是 当添加图片时 我想要一个命令来运行调整目录中所有图片的大小 简而言之 我想知道当新文件添加到特定位置时如何使服务器
  • CMake 链接 glfw3 lib 错误

    我正在使用 CLion 并且正在使用 glfw3 库编写一个程序 http www glfw org docs latest http www glfw org docs latest 我安装并正确执行了库中的所有操作 我有 a 和 h 文
  • 从 Xlib 转换为 xcb

    我目前正在将我的一个应用程序从 Xlib 移植到 libxcb 但在查找有关我有时使用的 XInput2 扩展的信息时遇到了一些麻烦 libxcb 中有 XInput2 实现吗 如果是的话 在哪里可以找到文档 目前我在使用此功能时遇到问题
  • 与 pthread 的进程间互斥

    我想使用一个互斥体 它将用于同步对两个不同进程共享的内存中驻留的某些变量的访问 我怎样才能做到这一点 执行该操作的代码示例将非常感激 以下示例演示了 Pthread 进程间互斥体的创建 使用和销毁 将示例推广到多个进程作为读者的练习 inc
  • 配置tomat的server.xml文件并自动生成mod_jk.conf

    我在用apache 2 2 15 and tomcat6 6 0 24 on CentOS 6 4并希望使用 tomcat 服务器的功能 通过添加以下内容自动生成 mod jk conf 文件
  • C修改printf()输出到文件

    有没有办法修改printf为了将字符串输出到文件而不是控制台 我尝试在互联网上查找一些内容 发现了类似的电话dup dup2 and fflush这可能与此有关 EDIT 也许我不清楚 问题是这是C考试问题 问题如下 解释一个通常将字符串输
  • 为什么opencv videowriter这么慢?

    你好 stackoverflow 社区 我有一个棘手的问题 我需要你的帮助来了解这里发生了什么 我的程序从视频采集卡 Blackmagic 捕获帧 到目前为止 它工作得很好 同时我用 opencv cv imshow 显示捕获的图像 它也工
  • 如何使用Android获取Linux内核的版本?

    如何在 Android 应用程序中获取 Linux 内核的版本 不是 100 确定 但我认为调用 uname r 需要 root 访问权限 无论如何 有一种不太肮脏的方法可以做到这一点 那就是 System getProperty os v
  • 我什么时候应该编写 Linux 内核模块?

    有些人出于某种原因想要将 Linux 中的代码从用户空间移动到内核空间 很多时候 原因似乎是代码应该具有特别高的优先级 或者只是 内核空间更快 这对我来说似乎很奇怪 我什么时候应该考虑编写内核模块 有一套标准吗 我怎样才能激励将代码保存在
  • 如何在 Mac OSX Mavericks 中正确运行字符串工具?

    如何在 Mac OSX Mavericks 中正确运行字符串工具 我尝试按照我在网上找到的示例来运行它 strings a UserParser class 但我收到此错误 错误 Applications Xcode app Content
  • 复制目录内容

    我想将目录 tmp1 的内容复制到另一个目录 tmp2 tmp1 可能包含文件和其他目录 我想使用C C 复制tmp1的内容 包括模式 如果 tmp1 包含目录树 我想递归复制它们 最简单的解决方案是什么 我找到了一个解决方案来打开目录并读
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的

随机推荐