Um das geplante Löschen aller Dateien in einem bestimmten Verzeichnis zu erreichen, müssen Sie den Linux-Befehl crontab verwenden, der mit einem Shell-Skript erreicht werden kann. Um beispielsweise alle Cache-Dateien unter /tmp zu löschen, gehen Sie wie folgt vor:
[root@localhost ~]# vi /etc/init.d/delete.sh 按i并复制下面内容到delete.sh文件内,之后按shift+: 输入wq保存并退出。 #!/bin/bash dir=/tmp //需要清空的目录名称 files=`ls ${dir}` for file in $files do if [ -e ${dir}/${file} ];then rm -f ${dir}/${file} fi done
Dann geben Sie diesem Skript 755 Berechtigungen, der Code lautet wie folgt:
[root@localhost ~]# chmod 755 /etc/init.d/delete.sh
Als nächstes verwenden Sie den Befehl crontab, um die Uhrzeit festzulegen. Löschen Sie beispielsweise jeden Tag um 3 Uhr morgens alle Dateien im Verzeichnis /tmp. Wenn Sie den folgenden Befehl ausführen, wird die VIM-Bearbeitungsoberfläche aufgerufen.
[root@localhost ~]# crontab –e 粘贴以下代码; 0 3 * * * /etc/init.d/delete.sh 保存并退出,现在定时工作已经完成了,每天凌晨3点自动清空/tmp目录下的文件。 crontab –e的时间用法说明; * * * * * /etc/init.d/delete.sh 分 时 日 月 周 命令 第1列*号表示分钟1-59 每分钟用*或者 */1表示 第2列*号表示小时0-23小时(0表示0点) 第3列*号表示日期1-31日 第4列*号表示月份1-12月 第5列*号表示每周,0-6(0表示星期天) 第6列是要运行的命令 例如每周3的晚上23:30运行该脚本,可以这样写: 30 23 * * 3 /etc/init.d/delete.sh
Dasselbe gilt auch für andere Zeiträume.
Das obige ist der detaillierte Inhalt vonLinux plant das automatische Löschen von Dateien in einem Verzeichnis in regelmäßigen Abständen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!