rm -rfi 防止误删除数据

linux系统下,rm -f 参数强制删除,不需要输入y 或n;

生产环境很容易误删除数据,一方面在删除之前确认再确认,路径和文件是否正确;

另一方面在删除的时候加上 -i 参数,删除的时候需要输入y或n,确认之后才能删除,多了一层保障;

举例如下:

rm -f 文件名  直接删除不需要提示;

[[email protected] yong]# rm -f zabbix_agentd.log

rm -fi 文件名,有提示确认是否删除,n不删除,y则删除;

[[email protected] yong]# rm -fi zabbix_agentd.log
rm:是否删除普通文件 "zabbix_agentd.log"?n
[[email protected] yong]# rm -fi zabbix_agentd.log
rm:是否删除普通文件 "zabbix_agentd.log"?y

rm -rf 文件夹 直接删除不需要提示;

[[email protected] huangyong]# rm -rf abc/

rm -rfi 文件夹 有4种情况:

第一种:提示是否进入目录,n则直接退出,不删除目录;

[[email protected] yong]# rm -rfi abc/
rm:是否进入目录"abc/"? n
[[email protected] yong]# ll abc/
总用量 4
-rw-r--r-- 1 root root 647 9月   1 16:35 zabbix_agentd.log


第二种:提示是否进入目录,y进入,提示是否删除文件,选n之后,不删除文件,接下来删除目录选择y也不能直接删除目录,提示目录非空;

[[email protected] yong]# rm -rfi abc/
rm:是否进入目录"abc/"? y
rm:是否删除普通文件 "abc/zabbix_agentd.log"?n
rm:是否删除目录 "abc/"?y
rm: 无法删除"abc/": 目录非空

第三种:提示进入目录,y进入,提示是否删除文件,选y之后,删除文件,接下来删除目录选y删除目录;

[[email protected] yong]# rm -rfi abc/
rm:是否进入目录"abc/"? y
rm:是否删除普通文件 "abc/zabbix_agentd.log"?y
rm:是否删除目录 "abc/"?y


第四种:提示进入目录,y进入,提示是否删除文件,选y之后,删除文件,接下来删除目录选n,不删除目录;

[[email protected] yong]# rm -rfi abc/
rm:是否进入目录"abc/"? y
rm:是否删除普通文件 "abc/zabbix_agentd.log"?y
rm:是否删除目录 "abc/"?n
[[email protected] yong]# ll abc/
总用量 0
时间: 2024-10-27 19:55:53

rm -rfi 防止误删除数据的相关文章

SQL Server 2008 数据库误删除数据的恢复

原文:http://www.cnblogs.com/dudu/archive/2011/10/15/sql_server_recover_deleted_records.html SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是“完整(Full)”. 针对这两个前提条件,会有三种情况: 情况一.如果这两个前提条件都存在,通过SQL语句只

LogMiner救命稻草_找回误删除数据

LogMiner日志挖掘技术在有些时候可以被比作是命悬一线的救命稻草,比方说误删除数据(如delete执行不当),可以通过LogMiner挖掘日志文件将这些数据补插回来 使用LogMiner预览: o LogMiner的原理就是找出日志文件(redo file),所对应的UNDO.如你新增1W行数据,在redo里以insert形式体现,对应的undo即为delete o LogMiner所有操作要在单个会话里执行 o LogMiner是挖掘在线日志或归档日志,因此最好要知道误操作的具体(精确更好

实战 SQL Server 2008 数据库误删除数据的恢复

关键字:SQL Server 2008, recover deleted records 今天有个朋友很着急地打电话给我,他用delete语句误删除了SQL Server 2008数据库中两个表中的所有记录,而这个数据库之前没有任何备份.让我帮他解决一下,不然他要赔偿客户很多钱. SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是“完整(

SQL Server中误删除数据的恢复

SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是“完整(Full)”. 针对这两个前提条件,会有三种情况: 情况一.如果这两个前提条件都存在,通过SQL语句只需三步就能恢复(参考文章),无需借助第三方工具(Recovery for SQL Server). a) 备份当前数据库的事务日志:BACKUP LOG [数据库名] TO dis

linux (rm指令) 及误删除解决

今天在群里看见这一幕: 看到这儿,我们学习一下 这个RM指令 rm命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉.对于链接文件,只是删除整个链接文件,而原有文件保持不变. 注意:使用rm命令要格外小心.因为一旦删除了一个文件,就无法再恢复它.所以,在删除文件之前,最好再看一下文件的内容,确定是否真要删除.rm命令可以用-i选项,这个选项在使用文件扩展名字符删除多个文件时特别有用.使用这个选项,系统会要求你逐一确定是否要删除.这时,必须输入y并按

linux下修改rm命令防止误删除

前言:相信很多朋友都遇到过在linux下用rm命令误删除文件的时候,此刻的心中仿佛有无数的羊驼在奔腾.那么怎么防止这种情况发生呢?当然是有方法的,我们可以写一个shell脚本,改变一下rm命令的作用. 第一步: 先在home目录下创建一个叫username名字的目录(当然名字可以自定义),具体命令为:sudo mkdir username(自定义的名字) 这时候记得要用命令:sudo chmod 777 username(自定义的名字)来改变一下你的目录权限,因为在home目录下刚创建的目录是没

替换rm命令防止误删除

放置误删除脚本: /usr/bin/remove.sh #!/bin/bash PATH_CNT="$#" TRASH_DIR="$HOME/.trash" mkdir -p $TRASH_DIR menu(){ echo echo -e "\t\t\tSys Options Menu\n" echo -e "\t1.Delete OK!" echo -e "\t2.Don't delete, into the re

读了这篇文章 AIX误删除数据的恢复将变得非常简单

在AIX环境下,若因维护误操作.存储mapping错误等,不小心将LV误删除,这种损失通常是巨大的.删除后的不当保护及恢复操作可能使数据无法恢复,也可能增加处理的时间与算法复杂度.如何有效保护现场,并选择正确的数据恢复方案是非常重要的. AIX的存储层有太多文章描述,做为铺垫,简要描述一下.PV相当于物理磁盘(对于存储,是存储映射过来的卷,对于操作系统而言,等同于物理硬盘),若干个PV组成一个VG,意味着可以将容量不同的存储空间合起来统一分配.为了实现这个目的,AIX把同一个VG的所有PV按相同

北亚案例:oracle数据库误删除数据的恢复方法

学习数据库时,我们只是以学习的态度,考虑如何使用数据库命令语句,并未想过工作中,如果误操作一下,都可能导致无可挽回的损失.当我在工作中真正遇到这些问题时,我开始寻找答案. 今天主要以oracle数据库为例,介绍关于表中数据删除的解决办法.(不考虑全库备份和利用归档日志) 删除表中数据有三种方法: ·delete(删除一条记录) ·drop或truncate删除表格中数据 1.delete误删除的解决方法 原理:利用oracle提供的闪回方法,如果在删除数据后还没做大量的操作(只要保证被删除数据的