Linux 定时任务:每天追加文件最后 1000 行到 /tmp/list

本文介绍如何使用 Shell 脚本和 crontab 在 Linux 系统中设置定时任务,每天在 10:00 将指定文件最后 1000 行追加到 /tmp/list 文件,并记录操作日志。

步骤:

  1. 创建 Shell 脚本:

创建一个名为 'append_last_1000_lines.sh' 的文件,并将以下代码复制到文件中:

#!/bin/bash

# 获取当前日期和时间
datetime=$(date +"%Y-%m-%d %H:%M:%S")

# 获取文件的倒数 1000 行内容
tail -n 1000 /path/to/file.txt >> /tmp/list

# 将操作记录写入日志文件
echo "[$datetime] Append last 1000 lines to /tmp/list" >> /path/to/logfile.log
  1. 修改文件路径:

将脚本中的 '/path/to/file.txt' 替换为实际文件的路径,将 '/path/to/logfile.log' 替换为日志文件的路径。

  1. 添加执行权限:
chmod +x append_last_1000_lines.sh
  1. 使用 crontab 设置定时任务:
crontab -e

在打开的文件中添加以下内容:

0 10 * * * /path/to/append_last_1000_lines.sh

保存并退出文件即可。现在,每天 10:00 整,倒数 1000 行内容将被追加到 /tmp/list 文件,并记录到日志文件中。

注意:

  • 确保 /tmp/list 文件存在,并具有写入权限。
  • /path/to/logfile.log 是可选的,您可以根据需要设置日志文件路径。
  • 该脚本只追加文件的最后 1000 行,如果文件内容小于 1000 行,则会将整个文件内容追加到 /tmp/list
Linux 定时任务:每天追加文件最后 1000 行到 /tmp/list

原文地址: https://www.cveoy.top/t/topic/nH4T 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录