linux避免误删除,自制回收站

linux避免误删除

linux避免误删除,自制回收站_第1张图片

实现文件垃圾箱

[root@centos7:~]#
vim trash.sh
#!/bin/bash
#****************************************************
#Date:         2022-09-07
#Author:       wwzroom
#FileName:     trash.sh
#Description:  The test script
#QQ:           896517050
#****************************************************
DIR=`mktemp -d /tmp/trash-$(date +%F_%H-%M-%S)XXXXXX`
mv $* $DIR
echo $* is move to $DIR
#定义DIR变量,新建临时文件夹,在tem下生成年月日时分秒的文件,移动($*所有位置参数,这里就是执行过程中输入的位置参数,即要删除的文件名字)所有数据到此目录,并屏幕显示所有的数据移动到此目录下。

2.加上执行权限:chmod +x trash.sh
[root@centos7:~]#
chmod +x trash.sh

3.临时定义别名:alias rm=/root/trash.sh
[root@centos7:~]#
alias rm=/root/trash.sh  

4.此时删除文件是的时候,就是执行的此脚本,不会直接删除
[root@centos7:~]#
rm a.sh
a.sh is move to /tmp/trash-2022-09-07_02-32-356KAgBi
[root@centos7:~]#
ll /tmp/trash-2022-09-07_02-32-356KAgBi
总用量 4
-rw-r--r-- 1 root root 281 96 23:00 a.sh
5.永久有效,需要在~.bashrc文件内容修改rm 的别名。
[root@centos7:~]#
vim .bashrc
...
alias rm=/root/trash.sh  #修改此项
...

6.需要永久删除的话要使用转义才行
[root@centos7:~]#
\rm -rf /tmp/trash-2022-09-07_02-32-356KAgBi

总结:1.利用别名的逻辑让rm变为我们想要具有的功能。
2.利用mktemp命令创建随机的文件夹,确保每个文件都放在不同的目录。

你可能感兴趣的:(常用,linux,运维,服务器)