Linux 定时任务:每天追加文件最后 1000 行到 /tmp/list
Linux 定时任务:每天追加文件最后 1000 行到 /tmp/list
本文介绍如何使用 Shell 脚本和 crontab 在 Linux 系统中设置定时任务,每天在 10:00 将指定文件最后 1000 行追加到 /tmp/list 文件,并记录操作日志。
步骤:
- 创建 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
- 修改文件路径:
将脚本中的 '/path/to/file.txt' 替换为实际文件的路径,将 '/path/to/logfile.log' 替换为日志文件的路径。
- 添加执行权限:
chmod +x append_last_1000_lines.sh
- 使用
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。
原文地址: https://www.cveoy.top/t/topic/nH4T 著作权归作者所有。请勿转载和采集!