关于后端:crontabLinux系统工具

40次阅读

共计 1072 个字符,预计需要花费 3 分钟才能阅读完成。

Crontab 是一个位于 Linux 和其余类 Unix 操作系统中的任务调度程序。它能够在指定的工夫内、周期性地执行指定的命令或脚本。Crontab 是由“cron daemon”(cron 守护程序)来治理的。

具体来说,您能够应用 crontab 命令来创立、编辑、删除和列出打算工作。应用 crontab 您能够:

  • 创立周期性执行的工作,如每分钟、每小时、每天、每周等;
  • 按指定的工夫执行工作,如在早晨 12 点、每月的第一天等;
  • 列出以后用户下的打算工作列表;
  • 编辑、删除、禁用或启用工作。

为了应用 crontab,您须要理解其语法和工作形式。在每个用户的帐户中都有一个 crontab 文件,其默认地位是在 /var/spool/cron/ 下。要创立或编辑一个 crontab 文件,您能够运行命令“crontab -e”。它将关上一个新的编辑器窗口,您能够在其中增加或批改工作。

总而言之,crontab 是一种十分有用的工具,能够帮忙管理员轻松地治理定期工作,从而进步计算机系统的可靠性和效率。
1written by CHATGPT

问题:服务器资源无限,提交测试 nodejs 时候会把整个我的项目打包上传,十分的占用空间,所以想用 crontab 定期清理不须要的我的项目包。

0 0 * * * cd /opt/bob/tools && sh del_tags.sh

每天 0 点 到 ”/opt/bob/tools” 门路下,执行 del_tags.sh 脚本

#!/bin/bash                                                                        
                                                                                   
# 获取以后工夫                                                                     
current=$(date +"%Y%m")                                                            
                                                                                   
# 1 个月前的工夫                                                                    
previous=$(date -d '1 months ago' +"%Y%m")                                         
                                                                                                                                           
# 输入后果                                                                         
#echo "$current $previous"                                                         
                                                                                 
# 应用 find 命令查找所有不以指定前缀的文件夹,并通过 grep 命令排除指定前缀的文件夹  
find /opt/release/bak -type d | grep "Release\-" | grep -v "$current" | grep -v "$previous" | xargs -d "\n" rm -rf 

脚本含意就是找到所有 Release 结尾的门路,并且反选最近两个月的文件,删除他们
大部分还是查 gpt 的
在 crontab 的定时工作中,可能呈现 ”2>&1 &” 的字样
含意:

在 Linux 命令行语句中,2>&1 & 是两个特殊符号的组合,含意如下:

2>&1:将规范谬误输入 2 重定向到规范输入 1 上。即,将程序输入的错误信息和规范输入都发送到同一个输入流中,以便于对立解决和记录。
&:在命令结尾增加 & 符号能够将该命令放在后盾执行,并立即返回命令行提示符,以便用户持续操作命令行。


  1. 1 ↩

正文完
 0