Linux定期删除文件中的内容

拿上一篇文章中的情景举例子

上一篇,我们在执行完 nohup 后,会在目录下生成 nohup.out文件,且随项目运行,不停增大对内存的占用。

下面来说下怎么解决:

第一步:创建 “auto-del-nohup.sh”脚本文件

命令行分别执行下面两个命令(代码前的 # 不需要输入!代表命令行输入的东西) 

#touch /home/auto-del-nohup.sh
#chmod +x /home/auto-del-nohup.sh

其中

touch :

touch [文件或目录…]

chmod:

 chmod +x 是给这个文件赋予执行的权限

第二步:编辑刚刚创建的.sh脚本

#vi /home/auto-del-nohup.sh 

 1.输入清空 /home/nohup.out 文档内容的代码:开始编辑 按 “i” ,编辑完 按 “Esc” 然后 输入 ":wq"

#!/bin/sh

cat /dev/null > /home/nohup.out

其中

 :代表重定向到哪里
/dev/null:可以看作Linux中的"黑洞",所有写入它的内容都会永远丢失,所以我们可以利用这一点。

第三步:使用crontab把刚刚的.sh脚本文件添加到系统的定时任务

2.命令行输入以下代码

#crontab -e

3.在文件中添加一行:

*/2 * * * * sh /home/auto-del-nohup.sh &

如下图:

前面的星和数字是什么意思?(这里我设置的是2分钟执行一次脚本文件)

发布了28 篇原创文章 · 获赞 38 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/Tianc666/article/details/104736733