当前位置: 首页 > news >正文

html5导航网站源码下载企业宣传册模板百度云

html5导航网站源码下载,企业宣传册模板百度云,表白网页在线生成器,买域名做网站的坏处在使用脚本时#xff0c;你也许希望脚本能在以后某个你无法亲临现场的时候运行。Linux系统提供了多个在预选时间运行脚本的方法#xff1a;at命令、cron表以及anacron。每种方法都使用不同的技术来安排脚本的运行时间和频率。接下来将依次介绍这些方法。 1.使用at命令调度作…在使用脚本时你也许希望脚本能在以后某个你无法亲临现场的时候运行。Linux系统提供了多个在预选时间运行脚本的方法at命令、cron表以及anacron。每种方法都使用不同的技术来安排脚本的运行时间和频率。接下来将依次介绍这些方法。 1.使用at命令调度作业 at命令允许指定Linux系统何时运行脚本。该命令会将作业提交到队列中指定shell何时运行该作业。 at的守护进程atd在后台运行在作业队列中检查待运行的作业。很多Linux发行版会在启动时运行此守护进程但有些发行版甚至都没安装这个软件包。如果你的Linux属于后一种情况则可以自行安装软件包的名字如你所料就是at。 atd守护进程会检查系统的一个特殊目录通常位于/var/spool/at或/var/spool/cron/atjobs从中获取at命令提交的作业。在默认情况下atd守护进程每隔60秒检查一次这个目录。如果其中有作业那么atd守护进程就会查看此作业的运行时间。如果时间跟当前时间一致就运行此作业。 接下来将介绍如何用at命令提交作业以及如何管理作业。 1.at命令的格式 at命令的基本格式非常简单 at  [-f  filename]  time 在默认情况下at命令会将STDIN的输入放入队列。你可以用-f选项指定用于从中读取命令脚本文件的文件名。 time选项指定了你希望何时运行该作业。如果指定的时间已经过去那么at命令会在第二天的同一时刻运行指定的作业。 指定时间的方式非常灵活。at命令能识别多种时间格式。 标准的小时和分钟比如10:15AM/PM指示符比如10:15 PM。特定的时间名称比如now、noon、midnight或者teatime4:00 p.m.。 除了指定运行作业的时间也可以通过不同的日期格式指定特定的日期。 标准日期比如MMDDYY、MM/DD/YY或DD.MM.YY。文本日期比如Jul 4或Dec 25加不加年份均可。时间增量。 Now 25 minutes10:15 PM tomorrow10:15 7 days 提示        at命令可用的日期和时间格式有很多种具体参见/usr/share/doc/at/timespec文件。 在使用at命令时该作业会被提交至作业队列。作业队列保存着通过at命令提交的待处理作业。针对不同优先级有52种作业队列。作业队列通常用小写字母a~z和大写字母A~Z来指代A队列和a队列是两个不同的队列。 注意        在几年前batch命令也能指定脚本的执行时间。这是个很独特的命令因为它可以安排脚本在系统处于低负载时运行。现在batch命令只不过是一个脚本而已/usr/bin/batch 它会调用at命令将作业提交到b队列中。 作业队列的字母排序越高此队列中的作业运行优先级就越低谦让度更大 。在默认情况下at命令提交的作业会被放入a队列。如果想以较低的优先级运行作业可以用-q选项指定其他的队列。如果相较于其他进程你希望你的作业尽可能少地占用CPU可以将其放入z队列。 2.获取作业的输出 当在Linux系统中运行at命令时显示器并不会关联到该作业。Linux系统反而会将提交该作业的用户email地址作为STDOUT和STDERR。任何送往STDOUT或STDERR的输出都会通过邮件系统传给该用户。 来看一个在CentOS发行版中使用at命令调度作业的例子 $ cat tryat.sh #!/bin/bash # Trying out the at command # echo This script ran at $(date %B%d,%T) echo echo This script is using the $SHELL shell. echo sleep 5 echo This is the scripts end. # exit $ $ at -f tryat.sh now warning: commands will be executed using /bin/sh job 3 at Fri Feb 7 16:23:00 2025 $ at命令会显示分配给作业的作业号以及为作业安排的运行时间。-f选项指明使用哪个脚本文件。now指示at命令立刻执行该脚本。 注意        无须在意at命令输出的警告消息因为脚本的第一行是#!/bin/bash该命令会由bash shell执行。 使用email作为at命令的输出极不方便。at命令通过sendmail应用程序发送email。如果系统中没有安装sendmail那就无法获得任何输出。因此在使用at命令时最好在脚本中对STDOUT和STDERR进行重定向如下例所示 $ cat tryatout.sh #!/bin/bash # Trying out the at command redirecting output # outfile$HOME/scripts/tryat.out # echo This script ran at $(date %B%d,%T) $outfile echo $outfile echo This script is using the $SHELL shell. $outfile echo $outfile sleep 5 echo This is the scripts end. $outfile # exit $ $ at -M -f tryatout.sh now warning: commands will be executed using /bin/sh job 4 at Fri Feb 7 16:48:00 2025 $ $ cat $HOME/scripts/tryat.out This scrit ran at Feb7,16:48:21This script is using the /bin/bash shell.This is the scripts end. $ 如果不想在at命令中使用email或者重定向则最好加上-M选项以禁止作业产生的输出信息。 3.列出等待的作业 atq命令可以查看系统中有哪些作业在等待 $ at -M -f tryatout.sh teatime warnign: commands will be executed using /bin/sh job 5 at Sat Feb 8 16:00:00 2025 $ $ at -M -f tryatout.sh tomorrow warning: commands will be executed using /bin/sh jb 6 at Sat Feb 8 16:53:00 2025 $ $ at -M -f tryatout.sh 20:30 warning: commands will be executed using /bin/sh job 7 at Fri Feb 7 20:30:00 2025 $ $ at -M -f tryatout.sh now1hour warning: commands will be executed using /bin/sh job 8 at Fri Feb 7 17:54:00 2025 $ $ atq 1 Fri Feb 7 16:11:00 2025 a christine 5 Sat Feb 8 16:00:00 2025 a christine 6 Sat Feb 8 16:53:00 2025 a christine 7 Fri Feb 7 20:30:00 2025 a christine 8 Fri Feb 7 17:54:00 2025 a christine $ 作业列表中显示了作业号、系统运行该作业的日期和时间以及该作业所在的作业队列。 4.删除作业 一旦知道了哪些作业正在作业队列中等待就可以用atrm命令删除等待中的作业。指定要删除的作业号即可 $ atq 1 Fri Feb 7 16:11:00 2025 a christine 5 Sat Feb 8 16:00:00 2025 a christine 6 Sat Feb 8 16:53:00 2025 a christine 7 Fri Feb 7 20:30:00 2025 a christine 8 Fri Feb 7 17:54:00 2025 a christine $ $ atrm 5 $ $ atq 1 Fri Feb 7 16:11:00 2025 a christine 6 Sat Feb 8 16:53:00 2025 a christine 7 Fri Feb 7 20:30:00 2025 a christine 8 Fri Feb 7 17:54:00 2025 a christine $ 只能删除自己提交的作业不能删除其他人的。 2.调度需要定期运行的脚本 使用at命令安排在未来的预设时间运行某个脚本固然不错但如果需要脚本在每天、每周或每月的同一时间运行呢这时候与其频繁使用at命令不如利用Linux系统的另一个特性。 Linux系统使用cron程序调度需要定期执行的作业。cron在后台运行并会检查一个特殊的表cron时间表从中获知已安排执行的作业。 1.cron时间表 cron时间表通过一种特别饿格式指定作业何时运行其格式如下 minutepasthour hourofday dayofmonth month dayofweek command cron时间表允许使用特定值、取值范围比如1~5或者通配符星号来指定各个字段。如果想在每天的10:15运行一个命令可以使用如下cron时间表字段 15  10  *  *  *  command dayofmonth、month以及dayofweek字段中的通配符表明cron会在每天10:15执行该命令。要指定一条在每周一的下午4:154:15 p.m.执行的命令可以使用军事时间1:00 p.m.是13:002:00 p.m.是14:003:00 p.m.是15:00以此类推如下所示 15  16  *  *  1  command 可以使用三字符的文本值mon、tue、web、thu、fri、sat、sun或数值0或7代表周日6代表周六来指定dayofweek字段。 这里还有另一个例子。要想在每月第一天的中午12点执行命令可以使用下列字段 00  12  1  *  *  command dayofmonth字段指定的是月份中的日期值1~31。 提示        聪明的你可能会思考如何设置才能让命令在每月的最后一天执行因为无法设置一个dayofmonth值涵盖所有月份的最后一天。常用的解决方法是加一个if-then语句在其中使用date命令检查明天的日期是不是某个月份的第一天01 00 12 28-31 * * if [ $(date %d -d tomorrow) 01 ] ; then command ; fi 这行脚本会在每天中午12点检查当天是不是当月的最后一天28~31如果是就由cron执行command。 另一种方法是将command替换成一个控制脚本controlling script在可能是每月最后一天的时候运行。控制脚本包含if-then语句用于检查第二天是否为某个月的第一天。如果是则由控制脚本发出命令执行必须在当月最后一天执行的内容。 命令列表必须指定要运行的命令或脚本的完整路径。你可以像在命令行中那样添加所需的任何选项和重定向符 15  10  *  *  *  /home/christine/backup.sh backup.out cron程序会以提交作业的用户身份运行该脚本因此你必须有访问该脚本或命令 以及输出文件的合理权限。 2.构建cron时间表 每个用户包括root用户都可以使用自己的cron时间表运行已安排好的任务。Linux提供了crontab命令来处理cron时间表。要列出已有的cron时间表可以用-l选项 $ crontab -l no crontab for christine $ 在默认情况下用户的cron时间表文件并不存在。可以使用-e选项向cron时间表添加字段。在添加字段时crontab命令会启动一个文本编辑器使用已有的cron时间表作为文件内容如果时间表不存在就是一个空文件。 3.浏览cron目录 如果创建的脚本对于执行时间的精确性要求不高则用预配置的cron脚本目录会更方便。预配置的基础目录共有4个hourly、daily、monthly和weekly。 $ ls /etc/cron.*ly /etc/cron.daily: 0anacron apt-compat cracklib-runtime logrotate [...] apport bsdmainutils dpkg man-db [...]/etc/cron.hourly:/etc/cron.monthly: 0anacron/etc/cron.weekly: 0anacron man-db update-notifier-common $ 如果你的脚本需要每天运行一次那么将脚本复制到daily目录cron就会每天运行它。 4.anacron程序 cron程序唯一的问题是它假定Linux系统是7 x 24小时运行的。除非你的Linux运行在服务器环境否则这种假设未必成立。 如果某个作业在cron时间表中设置的运行时间已到但这时候Linux系统处于关闭状态那么该作业就不会运行。当再次启动系统时cron程序不会再去运行那些错过的作业。为了解决这个问题许多Linux发行版提供了anacron程序。 如果anacron判断出某个作业错过了设置的运行时间它会尽快运行该作业。这意味着如果Linux系统关闭了几天等到再次启动时原计划在关机期间运行的作业会自动运行。有了anacron就能确保作业一定能运行这正是通常使用anacron代替cron调度作业的原因。 anacron程序只处理位于cron目录的程序比如/etc/cron.monthly。它通过时间戳来判断作业是否在正确的计划间隔内运行了。每个cron目录都有一个时间戳文件该文件位于/var/spool/anacron $ ls /var/spool/anacron cron.daily cron.monthly cron.daily $ $ sudo cat /var/spool/anacron/cron.daily [sudo] password for christine: 20250208 $ anacron程序使用自己的时间表通常位于/etc/anacrontab来检查作业目录 $ cat /etc/anacrontab # /etc/anacrontab: configuration file for anacron# See anacron(8) and anacrontab(5) for details.SHELL/bin/sh PATH/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin HOME/root LOGNAMEroot# These replace crons entries 1 5 cron.daily run-parts --report /etc/cron.daily 7 10 cron.weekly run-parts --report /etc/cron.weekly monthly 15 cron.monthly run-parts --report /etc/cron.monthly $ anacron时间表的基本格式和cron时间表略有不同 period  delay  identifier  command period字段定义了作业的运行频率以天为单位。anacron程序用该字段检查作业的时间戳文件。delay字段指定了在系统启动后anacron程序需要等待多少分钟再开始运行错过的脚本。 注意        anacron不会运行位于/etc/cron.hourly目录的脚本。这是因为anacron并不处理执行时间需求少于一天的脚本。 identifier字段是一个独特的非空字符串比如cron.weekly。它唯一的作用是标识出现在日志消息和错误email中的作业。command字段包含了run-parts程序和一个cron脚本目录名。run-parts程序负责运行指定目录中的所有脚本。 at、cron和anacron在调度作业运行方面各占有一席之地。然而你可能希望在用户启动新的bash shell而不是特定时刻执行某个脚本。
http://www.yayakq.cn/news/1840/

相关文章:

  • 网站地址和网页地址网站宣传策略
  • 网站建设的关键事项用python做的电商网站
  • 如何做品牌推广网站工商注册核名查询系统官网
  • 公司网站企业文化怎么做谷歌手机网页版入口
  • 苏州制作手机网站青岛网站搭建公司哪家好
  • 永嘉高端网站建设价格怎么建设银行网站打不开
  • 友情链接互换网站苏州产品推广公司
  • 一个域名可以做多少个二级网站WordPress注册无需发送邮件
  • 免费行情软件网站mnw网站建设和连接器区公司名字
  • 网站建设的发展目标asp.net 3.5网站开发实例教程
  • 网站logo设计标准网站备案 主办单位
  • 兖州网站开发顺义顺德网站建设
  • 制作网站支付方式华为虚拟主机
  • 手机模板网站建站报价表
  • 网站建设1993seowordpress 发短信
  • 怎么创建私人网站wordpress 火车采集
  • 如何制作自己的网站模版微信搜一搜seo优化
  • 备案网站大全泉州seo托管
  • 好女人生活常识网站建设网站后台asp源码
  • 品牌网站响应式网站有哪些南充房产网最新楼盘
  • 企业为什么做网站最好的建站公司
  • 上海阔达网站建设公司类似云盘 网站开发
  • 是想建个网站 用本地做服务器浙江建设干部学校网站
  • 个人网站免费模板游戏网站推广
  • 企业网站建设注意事项建设网站的岗位
  • 高仿奢侈手表网站两个男的怎么做网站
  • 帝国cms手机网站制作wordpress网站怎么建
  • 积分交易网站开发群晖手动安装wordpress
  • 平面电商网站建设iis 架设 wordpress
  • 绵阳市三台县城乡建设局网站品牌建设的核心