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

成都网站建设木木科技网站建设应该懂什么知识

成都网站建设木木科技,网站建设应该懂什么知识,百度小程序申请流程,wordpress免费CDN加速参考资料 【図解】cronの仕組み定时任务 - crontab解决ubuntu下定时任务不执行问题crontab环境变量问题#x1f4a5;Linux定时任务功能详解#xff1a;crontab与at命令应用指南 目录一. 环境准备1.1 wsl开启systemd1.2 开启cron日志二. cron服务管理相关命令2.1 service 的方…参考资料 【図解】cronの仕組み定时任务 - crontab解决ubuntu下定时任务不执行问题crontab环境变量问题Linux定时任务功能详解crontab与at命令应用指南 目录一. 环境准备1.1 wsl开启systemd1.2 开启cron日志二. cron服务管理相关命令2.1 service 的方式2.2 systemctl 的方式三. 简单使用crontab定时任务3.1 编辑一个定时任务3.1.1 crontab -e 编辑定时任务3.1.2 通过命令行直接添加3.2 查看定时任务3.2.1 crontab -l 查看既存的定时任务3.2.2 /var/spool/cron/crontabs/用户名 文件查看3.3 删除定时任务3.3.1 crontab -e 编辑删除定时任务3.3.2 按关键字在命令行删除3.3.3 crontab -r 的方式删除四. 定时任务进阶4.1 注意事项4.2 定时任务的示例4.2.1 由于PATH引起问题的实例4.2.2 其他定时任务示例一. 环境准备 1.1 wsl开启systemd ⏹笔者使用wsl来运行ubuntu而 wsl 默认没有真正的 init 系统无法使用现代 Linux 的标准服务管理工具systemctl命令。 可通过修改/etc/wsl.conf的方式开启使用systemctl命令。如果使用的是VMware等虚拟机或者云服务器则默认会开启systemctl命令。 apluserFengYeHong-HP:~$ ls -l /etc/wsl.conf -rw-r--r-- 1 root root 43 Aug 14 20:50 /etc/wsl.conf apluserFengYeHong-HP:~$ apluserFengYeHong-HP:~$ tail -n 2 /etc/wsl.conf [boot] systemdtrue⏹修改完毕/etc/wsl.conf之后退出wsl在PowerShell终端中执行关闭wsl的命令 wsl --shutdown⏹然后再一次进入wsl之后systemd init 系统就已经被启用了 可通过下面的命令进行验证 apluserFengYeHong-HP:~$ ps -p 1 -o comm systemd注意事项 wsl1无法启用systemd init 系统wsl2才可以。启用 systemd 后WSL 启动会比以前慢一些因为它会启动一堆后台服务dbus、journald、cron 等 1.2 开启cron日志 ⏹ubuntu默认没有开cron日志可通过修改配置文件选择是否开启。去除#既可以开启cron日志。 apluserFengYeHong-HP:~$ ls -l /etc/rsyslog.d/50-default.conf -rw-r--r-- 1 root root 1123 Aug 13 09:00 /etc/rsyslog.d/50-default.conf apluserFengYeHong-HP:~$ apluserFengYeHong-HP:~$ grep cron /etc/rsyslog.d/50-default.conf cron.* /var/log/cron.log # cron,daemon.none;\⏹配置文件修改完毕之后还需要重启一下rsyslog服务当定时任务开始执行后就可以在/var/log/cron.log中看到日志了。 # 这两种方式都可以 sudo systemctl restart rsyslog sudo service rsyslog restart二. cron服务管理相关命令 特性servicesystemctl诞生时代SysV init 时代上世纪 90 年代systemd 时代2010 年以后依赖的 init 系统SysV init / Upstart / systemd兼容模式只能用于 systemd底层调用在旧系统调用 /etc/init.d/xxx 脚本在新系统里会转到 systemctl直接通过 systemd 的 D-Bus API 管理服务功能范围主要是启动、停止、重启、查看状态除了服务管理还能管理开机启动、目标(target)、挂载点、设备、电源等输出信息简单的状态行旧模式或 systemd 的详细状态新模式详细的 systemd 状态、日志、依赖关系是否未来主流只是为了兼容旧脚本保留现代 Linux 的标准未来主流 2.1 service 的方式 # 查看crontab服务状态 ps -ef | grep [c]ron service cron status sudo service cron start # 启动服务 sudo service cron stop # 关闭服务 sudo service cron restart # 重启服务 sudo service cron reload # 重新载入配置2.2 systemctl 的方式 # 查看crontab服务状态 ps -ef | grep [c]ron systemctl status cronsudo systemctl start cron # 启动 sudo systemctl stop cron # 停止 sudo systemctl restart cron # 重启 sudo systemctl enable cron # 开机自启 sudo systemctl disable cron # 禁用开机自启三. 简单使用crontab定时任务 3.1 编辑一个定时任务 3.1.1 crontab -e 编辑定时任务 直接在命令行输入crontab -e编辑定时任务 apluserFengYeHong-HP:~$ crontab -e输入完成之后会使用指定的文本编辑器(此处使用的是nano编辑器)打开定时任务编辑页面 3.1.2 通过命令行直接添加 ⏹如果定时任务的命令长度不是十分长的话可以直接通过命令行追加 crontab -l 2/dev/null读取现有任务如果没有就忽略错误echo ...指定定时任务的内容crontab -覆盖回 crontab添加定时任务 (crontab -l 2/dev/null; echo * * * * * echo Hello world /tmp/hello.log) | crontab -3.2 查看定时任务 3.2.1 crontab -l 查看既存的定时任务 apluserFengYeHong-HP:~$ crontab -l * * * * * echo Hello world /tmp/hello.log3.2.2 /var/spool/cron/crontabs/用户名 文件查看 每个用户对应的定时任务都会保存到 /var/spool/cron/crontabs/用户名 文件中 apluserFengYeHong-HP:~$ sudo ls -l /var/spool/cron/crontabs/apluser -rw------- 1 apluser crontab 222 Aug 13 08:52 /var/spool/cron/crontabs/apluserapluserFengYeHong-HP:~$ sudo cat /var/spool/cron/crontabs/apluser # DO NOT EDIT THIS FILE - edit the master and reinstall. # (- installed on Wed Aug 13 08:52:05 2025) # (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $) * * * * * echo Hello world /tmp/hello.log3.3 删除定时任务 3.3.1 crontab -e 编辑删除定时任务 crontab -e3.3.2 按关键字在命令行删除 # 可以先将既存的定时任务备份 crontab -l mycron.bk # 然后通过关键词的方式删除定时任务 crontab -l | grep -v Hello world crontab -l | grep -v Hello world | crontab -3.3.3 crontab -r 的方式删除 注意此种方式会删除当前用户的所有定时任务慎用。 apluserFengYeHong-HP:~$ crontab -ir crontab: really delete apluser crontab? (y/n) y apluserFengYeHong-HP:~$ apluserFengYeHong-HP:~$ crontab -l no crontab for apluser apluserFengYeHong-HP:~$ sudo ls -l /var/spool/cron/crontabs/apluser [sudo] password for apluser: ls: cannot access /var/spool/cron/crontabs/apluser: No such file or directory四. 定时任务进阶 ⏹/etc/crontab 是 系统级别的 Cron 配置文件 设置一些 系统维护任务清理日志、同步时间等启动时执行系统服务相关脚本运行需要 root 权限的定时任务 apluserFengYeHong-HP:~$ cat /etc/crontab # /etc/crontab: system-wide crontab # Unlike any other crontab you dont have to run the crontab # command to install the new version when you edit this file # and files in /etc/cron.d. These files also have username fields, # that none of the other crontabs do.SHELL/bin/sh # You can also override PATH, but by default, newer versions inherit it from the environment #PATH/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin# 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) (Sunday0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 17 * * * * root cd / run-parts --report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || ( cd / run-parts --report /etc/cron.daily ) 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / run-parts --report /etc/cron.weekly ) 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / run-parts --report /etc/cron.monthly ) #4.1 注意事项 ⏹PATH变量被精简 在交互式 shell 里PATH 可能很长例如 /usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:...但 cron 里常常只有 /usr/bin:/bin⏹HOME变量可能不同 交互 shell 下的 HOME 一般是当前用户的家目录但 cron 可能会是 / 或其他值。如果脚本依赖 ~ 或相对路径建议使用绝对路径。 ⏹不会加载 ~/.bashrc 或 ~/.profile cron 不会读取你时登录时加载的配置文件所以环境变量、别名、函数都可能丢失。如果脚本依赖这些配置可以在任务里手动加载 ⏹SHELL 变量可能不同 cron 默认使用 /bin/sh在很多系统上是 dash而不是 /bin/bash。如果脚本里用了 bash 特性[[ ]]、{1..5}、source 等除了在脚本内指定Shebang之外还可以再定时任务编辑界面添加 SHELL/bin/bash⏹%的特殊含义 在 crontab 中 % 表示换行相当于把它后面的内容当作命令的标准输入 STDIN。如果要在命令里用 %必须写成 \% 才能被当作普通字符。 # 在终端执行会输出 Hello%World # 但是放进 crontab 里会变成 # 命令echo Hello # 标准输入World * * * * * echo Hello%World4.2 定时任务的示例 4.2.1 由于PATH引起问题的实例 PATH变量在交互式shell中会输出很多内容 apluserFengYeHong-HP:~$ echo $PATH | xargs -d : -L 1 | grep -v 威 | wc -l 48 apluserFengYeHong-HP:~$ echo $PATH | xargs -d : -L 1 | grep -v 威 | head /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/games /usr/lib/wsl/lib /mnt/c/Program Files (x86)/VMware/VMware Workstation/bin/但我们在corn定时任务中使用了PATH之后只会输出很少的内容 apluserFengYeHong-HP:~$ crontab -l SHELL/bin/bash * * * * * /home/apluser/work/0815/bash_test.shapluserFengYeHong-HP:~$ cat /home/apluser/work/0815/bash_test.sh #!/usr/bin/env bash echo $PATH | xargs -d : -L 1 | grep -v 威 /home/apluser/work/corn1.logapluserFengYeHong-HP:~$ tail /home/apluser/work/corn1.log /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/games /snap/binapluserFengYeHong-HP:~$4.2.2 其他定时任务示例 # 实例1每1分钟执行一次myCommand * * * * * myCommand# 实例2每小时的第3和第15分钟执行 3,15 * * * * myCommand# 实例3在上午8点到11点的第3和第15分钟执行 3,15 8-11 * * * myCommand# 实例4每隔两天的上午8点到11点的第3和第15分钟执行 3,15 8-11 */2 * * myCommand# 实例5每周一上午8点到11点的第3和第15分钟执行 3,15 8-11 * * 1 myCommand# 实例6每晚的21:30重启smb 30 21 * * * /etc/init.d/smb restart# 实例7每月1、10、22日的4 : 45重启smb 45 4 1,10,22 * * /etc/init.d/smb restart# 实例8每周六、周日的1 : 10重启smb 10 1 * * 6,0 /etc/init.d/smb restart# 实例9每天18 : 00至23 : 00之间每隔30分钟重启smb 0,30 18-23 * * * /etc/init.d/smb restart# 实例10每星期六的晚上11 : 00 pm重启smb 0 23 * * 6 /etc/init.d/smb restart# 实例11每一小时重启smb * */1 * * * /etc/init.d/smb restart# 实例12晚上11点到早上7点之间每隔一小时重启smb 0 23-7 * * * /etc/init.d/smb restart⏹在 crontab 里reboot 是一种特殊的时间标记表示系统启动完成后执行一次。 当系统启动或 cron 服务启动后运行一次 script_a.py /home/pi/cron.log 21把标准输出和错误输出都追加写入 /home/pi/cron.log reboot /usr/bin/python3 /home/pi/script_a.py /home/pi/cron.log 21⏹常见的特殊时间标记还有 语法含义reboot系统启动后运行一次yearly每年运行一次等同于 0 0 1 1 *monthly每月运行一次等同于 0 0 1 * *weekly每周运行一次等同于 0 0 * * 0daily每天运行一次等同于 0 0 * * *hourly每小时运行一次等同于 0 * * * *
http://www.pierceye.com/news/941554/

相关文章:

  • 网站统计分析注册公司步骤和所需材料
  • 网站开发的好处和弊端客户管理系统简称
  • 网站开发提供图片加载速度wordpress速度
  • 购物网站如何备案wordpress首页自定义
  • 企业手机网站建设提升用户体验的三个点无极领域付费网站
  • 网站设计常州网站开发年度总结
  • 免费注册网站网址做网站大概要
  • 注册网站会不会有问题做网站建设的注意事项
  • 小吃培训网站源码淮南市招标投标信息网
  • 做网站申请多少类商标网站开发的案例分析模板
  • 怎么进网站后台管理系统在线二维码制作生成器
  • seo网站关键词优化多少钱陕西省建设厅网站官网
  • 仿xss网站搭建建设网站费用吗
  • 钓鱼网页在线生成网站网站建设肆金手指排名7
  • idc网站备案家具网站建设方案
  • 互联网做网站怎么赚钱WordPress副标题不显示
  • 好的网站域名网站运营推广怎做
  • 巴适网站建设wordpress上传与安装包
  • 网站备案不关站wordpress网
  • 中国佛山手机网站建设十大互联网公司排名
  • 手把手指导做网站wordpress 熊掌号插件
  • 宁波网站建设方案报价湖州企业做网站
  • 优化 导航网站百度官网网站首页
  • 各大网站大全河北网站建设seo优化制作设计
  • 做照片的网站前端开发和后端开发
  • 谁能低价做网站支付接口泰州企业自助建站系统
  • 徐州 网站建设辽阳建设网站
  • PHP MySQL 网站开发实例单页应用网站
  • 制作网站的步骤关于企业网站建设的相关思考
  • 统计局网站建设情况ppt设计网站