Linux下监控某个目录占用磁盘大小变化

您所在的位置:网站首页 linux目录大小限制 Linux下监控某个目录占用磁盘大小变化

Linux下监控某个目录占用磁盘大小变化

2023-03-22 11:14| 来源: 网络整理| 查看: 265

bash脚本:

代码实现:

#!/bin/bash # 设置要监控的目录 DIR="/path/to/directory" # 设置日志文件路径 LOGFILE="/var/log/dirusage.log" # 设置监控间隔(单位为秒) INTERVAL=60 # 循环监控目录使用情况 while true do # 获取当前时间 TIMESTAMP=`date +"%Y-%m-%d %H:%M:%S"` # 获取目录使用情况 DIRUSAGE=`du -h $DIR` # 将结果写入日志文件 echo "$TIMESTAMP $DIRUSAGE" >> $LOGFILE # 等待指定的时间 sleep $INTERVAL done

该脚本使用了 du 命令来获取指定目录的使用情况,并将结果写入日志文件。脚本使用了一个死循环来持续监控目录使用情况,并将结果写入日志文件,直到脚本被手动停止。可以使用 crontab 将脚本设置为定时任务,定期执行脚本以持续监控指定目录的磁盘使用情况。

定时任务创建:

要创建 crontab 文件,可以使用 crontab -e 命令来编辑当前用户的 crontab 文件。执行这个命令后,会打开一个文本编辑器,其中包含了当前用户的定时任务列表。如果是第一次编辑 crontab 文件,这个文件可能是空的。

你可以在这个文件中添加新的定时任务,每个任务占用一行。每行的格式如下:

* * * * * command-to-be-executed

这个格式中,每个星号 * 代表一个时间单位。依次代表了分钟、小时、日、月、周几。例如,* * * * * 表示每分钟执行一次。如果想要每小时执行一次,则可以使用 0 * * * *,其中 0 代表了小时的第 0 分钟。

在 command-to-be-executed 位置填写要执行的命令或脚本。需要注意的是,在 crontab 中执行的命令和脚本,需要使用绝对路径或者设置好环境变量,否则可能会执行失败。

例如,要在每天的凌晨 1 点执行 /path/to/my/script.sh 脚本,可以添加如下一行到 crontab 文件中:

0 1 * * * /path/to/my/script.sh

编辑完 crontab 文件后,保存并退出编辑器即可。cron 将自动读取并执行 crontab 中的定时任务。

需要注意的是,每个用户都有自己的 crontab 文件。如果你想为另一个用户创建 crontab 文件,可以使用 crontab -u username -e 命令,其中 username 代表了目标用户的用户名。执行这个命令后,会打开目标用户的 crontab 文件,你可以像编辑自己的 crontab 文件一样编辑它。

查看定时任务列表:

crontab -l

补充:

crontab命令:

crontab命令用于创建、修改、删除和查看定时计划任务。每个用户可以使用crontab命令创建自己的定时任务计划,生成的定时计划文件将以用户的账户名命名。

定时计划任务文件由每行命令组成,每行有6个字段,由空格或制表符分隔。前5个字段表示运行任务的时间,最后一个字段是任务的命令。

前五个字段的含义如下:

分钟:值为0-59

小时:值为0-23

日期:值为1-31

月份:值为1-12

星期:值为0-6

在这五个字段中,可以使用以下描述的特殊字符:

*:匹配所有可能的值

-:定义一个范围:比如 0 2 * * 1-5 表示每周一到每周五的凌晨两点

/:表示建个多少时间,比如 */5 * * * * 表示每五分钟

,:表示或的含义 如 0 0,6,12 * * * 表示每天的0点 6点 12点



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3