简而言之:
设置别名
alias srm='rm -Ir --preserve-root'
alias rm='rm -Ir --preserve-root' #这个少用,避免到了别的机器上,没用别名,不小心删了不该删的东西。
避免使用 ./ ,直接用*
事故例子:
- 敲rm -rf /tmp时,敲成了rm -rf / tmp。多了个空格。
2. 应用后台home目录下,rm -rf ./*XXXX* 不知道怎么敲成了rm -rf ./* XXXX* 。多了个空格。
rm and Its Dangers
https://docstore.mik.ua/orelly/unix3/upt/ch14_03.htmdocstore.mik.ua https://github.com/gee1k/notes/issues/10github.com Linux防止“rm -rf /”误操作的方法blog.51cto.com![v2-ca4bb545e03547dda75e72d5848e12b7_ipico.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=3de88e61-062f-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-ca4bb545e03547dda75e72d5848e12b7_ipico.jpg)
避免使用 ./
前缀
要删除一个目录下的所有内容,不要使用
rm -rf ./*
,更进一步地,不要使用 ./*
来引用当前目录下的所有文件,直接使用 *
即可,这样可以避免写成 /*
或者 / *
这样的悲剧发生。
即使用如下命令删除当前文件夹的所有文件 rm -rf *
不小心敲了 rm -rf / 后反应是怎样的?www.zhihu.com高赞回答:
我们是不允许用rm命令的,要删除文件,需要mv文件到指定目录/delete/,会有一个定时任务,每周清空/delete/下文件。
CSDN-专业IT技术社区-登录blog.csdn.net一、sh脚本如下:
#!/bin/sh
location="/home/sharedir/"
find $location -mtime +30 -type f |xargs rm -f
保存命名为del.sh
另外两种查找相关文件的方法如下:
1)find /home/sharedir/ -mtime +30 -type f -name *.gz
2)find /home/sharedir/ -mtime +30 -type f |xargs
二、使用crontab -e 定时启动del.sh脚本
*/10 * * * * /bin/sh /home//del.sh
1) crontab -l 显示你的crontab文件
2)crontab -e // 编辑你的crontab文件,如果不存在,则创建一个新的crontab文件
————————————————
版权声明:本文为CSDN博主「loveheronly」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。