要在Linux中查看某个目录或文件每天的大小变化,你需要使用一些工具来记录这些信息,因为标准的Linux命令并不直接提供这种历史数据。不过,你可以使用以下方法之一来获取近似的信息或者设置一个脚本来定期记录文件或目录的大小。

1. 使用du命令获取当前大小

要查看当前目录或文件的大小,可以使用du命令(disk usage):

du -sh /path/to/directory
  • 1.

其中 -s 表示总结输出,-h 表示以易读的格式显示大小。

2. 使用cron定时任务记录每日大小

如果您希望定期记录文件或目录的大小,可以创建一个shell脚本并使用cron定时任务来执行它。以下是一个简单的例子:

创建shell脚本

创建一个名为 log_size.sh 的脚本文件,并赋予执行权限:

nano log_size.sh
  • 1.

在文件中输入以下内容:

#!/bin/bash
date=$(date "+%Y-%m-%d %H:%M:%S")
size=$(du -sh /path/to/directory | cut -f1)
echo "$date $size" >> /var/log/directory_size.log
  • 1.
  • 2.
  • 3.
  • 4.

保存并关闭文件后,给脚本添加执行权限:

chmod +x log_size.sh
  • 1.
配置cron定时任务

编辑cron定时任务:

crontab -e
  • 1.

添加一行以每晚午夜执行脚本:

0 0 * * * /path/to/log_size.sh
  • 1.

这将每天记录一次目录的大小到 /var/log/directory_size.log 文件中。

3. 使用第三方工具

还有其他一些工具可以帮助监控文件系统的使用情况,例如ncdu, btrfs filesystem df, 或者更高级的系统监控工具如glancesnmon等。

注意事项
  • 上述方法只能记录从脚本开始运行之后的数据。
  • 如果需要获取过去的历史数据,可能需要查看备份或其他记录系统。
  • 确保有足够的权限来执行上述操作,特别是写入日志文件和配置cron定时任务。