linux替换rm命令,防止误删

1. 在/home/username/ 目录下新建一个目录,命名为:.trash

2.. 在/home/username/tools/目录下,新建一个shell文件,命名为: remove.sh

#!/bin/bashPARA_CNT=$#
TRASH_DIR="/home/username/.trash"
for i in $*; do
STAMP=`date +%s`
fileName=`basename $i`
mv $i $TRASH_DIR/$fileName.$STAMP
done

3. 修改~/.bashrc, 增加一行 (如果是root用户,修改/etc/profile)

alias rm="sh /home/username/tools/remove.sh"

4. 设置crontab,定期清空垃圾箱,如:

crontab -e
0 0 * * * rm -rf /home/username/.trash/*

5. source ~/.bashrc 使替换立即生效(root用户使用 source /etc/profile)

为了方便使用,将其制作成xshell的按钮

mkdir -p /home/username/.trash
mkdir -p /home/username/tools

cat << EOF >  remove.sh
> #! /bin/bash
> PARA_CNT=$#
> TRASH_DIR="/home/username/.trash"
> for i in $*; do
> STAMP=`date +%s`
> fileName=`basename $i`
> mv $i $TRASH_DIR/$fileName.$STAMP
> done
> EOF

原文地址:https://www.cnblogs.com/hcs88/p/11990764.html

时间: 2024-10-03 15:48:00

linux替换rm命令,防止误删的相关文章

Linux中rm命令详解

linux下rm命令使用详解---linux删除文件或目录命令 用户可以用rm命令删除不需要的文件.该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除.对于链接文件,只是断开了链接,原文件保持不变. rm命令的一般形式为:rm [选项]... 目录... 删除指定的<文件>(即解除链接). -d      --directory    删除可能仍有数据的目录 (只限超级用户) -f      --force          略过不存在的文件,

每天一个linux之rm命令

学习了创建文件和目录的命令mkdir ,今天学习一下linux中删除文件和目录的命令:rm命令.rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除.对于链接文件,只是删除了链接,原有文件均保持不变. rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf).所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑. 1

linux下rm命令修改,增加回收站功能【笔记】

一个脚本,linux的用户根目录下.bashrc最后加入如下代码,可以修改rm命令,让人们rm时候不再会全部删除,而是会加入到回收站里,以下是根据别人的资料参考修改的,不是原创 加入后,需要source .bashrc 工作原理,重新定义rm,每次执行rm的话,会将文件mv到~/.trash目录下 操作方法,终端下执行: mcls----->清空.trash回收站中的文件 ur  恢复指定文件 cattrash  查看回收站的内容 mkdir -p ~/.trash alias rm=trash

【Linux】- rm命令

Linux rm命令用于删除一个文件或者目录. 语法 rm [options] name... 参数: -i 删除前逐一询问确认. -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认. -r 将目录及以下之档案亦逐一删除. 实例 删除文件可以直接使用rm命令,若删除目录则必须配合选项"-r",例如: # rm test.txt rm:是否删除 一般文件 "test.txt"? y # rm homework rm: 无法删除目录"homework&qu

linux 重写rm命令

重写rm命令 replease rm to trash root用户 vi /etc/bashrc 在最后面增加如下脚本 saferm () { if [ ! -d /export/dustbin ] then mkdir -p /export/dustbin chmod 777 /export/dustbin if [ $? -ne 0 ] then echo "Error: failed to create /export/dustbin" fi fi local dst=`mkt

Linux之rm命令

自己瞅: [[email protected] ~]# rm --help 用法:rm [选项]... 文件... 删除 (unlink) 文件. -f, --force 强制删除.忽略不存在的文件,不提示确认 -i 在删除前需要确认 -I 在删除超过三个文件或者递归删除前要求确认.此选项比-i 提 示内容更少,但同样可以阻止大多数错误发生 --interactive[=WHEN] 根据指定的WHEN 进行确认提示:never,once (-I), 或者always (-i).如果此参数不加WH

linux 替换 sed命令 转载

转载自这里,感谢原作者 sed 's/test/mytest/g' example.txt 表示将example.txt中的test文本全部替换为mytest 请注意这个命令sed 's/test/mytest/' example.txt 如果不带g则表示只会替换每行开头的test为mytest sed '^s\test\mytest\p' example.txt 替换每行第一次出现的test为mytest, 并且只打印被替换的行 sed 's#10#100#g'将文本中的10替换成100 #相

替换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

linux的rm命令

rm:remove -r:递归删除 -f:--force强制删除不提示