替換rm命令防止誤刪除

2022-08-25 14:00:37 字數 1280 閱讀 3509

1、新建乙個垃圾桶目錄

```mkdir /tmp/.trash

chmod 777 /tmp/.trash/

```2、新建自定義刪除指令碼

```vim /usr/bin/remove.sh

``````

#!/bin/bash

trash_dir="/tmp/.trash/$/.trash"

mkdir -p $trash_dir

rmpath=""

#遍歷rm命令引數(e.g. rm -rf時要去掉-rf引數,只需後面的path列表即可)

for arg in "$@"

dois_arg=$(echo "$arg" | grep "^-")

if [ -z "$is_arg" ]; then

if [ -n "$rmpath" ]; then

rmpath="$ "

firmpath="$ $arg"

fidone

if [ -n "$rmpath" ]; then

file_parent_dir=$(pwd $rmpath)

suffix=$(echo `date "+%y%m%d%h%m%s"`)

# 拼接欲刪除檔案的目錄,在**站中的目錄名稱(直接將目標檔案或目錄的父目錄作為在**站的名稱,這樣做好處是無論刪除的是檔案或目錄都可統一處理)

file_trash_dir="$$.children.rm.$.tmp"

if [ ! -d "$file_trash_dir" ]; then

mkdir -p $file_trash_dir

fimv $rmpath "$"

fi```

3、修改/etc/profile, 增加一行

```vim /etc/profile

alias rm="sh /usr/bin/remove.sh"

```4、使/etc/profile生效

```source /etc/profile

```5、定時刪除垃圾桶

每天凌晨清空垃圾桶

```crontab -e

0 0 * * * rm -rf /tmp/.trash/$/.trash/*

```6、如果要在命令列執行真正的rm命令,在rm前加反斜槓\

```\rm -rf file

```

safe rm替換rm命令,防止誤刪除

wget 2.解壓safe rm tar zxf safe rm 0.12.tar.gz 3.複製safe rm到 usr local bin目錄下 cp safe rm 0.12 safe rm usr local bin rm 4.新增環境變數 vim etc profile 在最後一行新增 p...

修改rm 防止誤刪除

最近rm f 次數太多了,為此付出了血的代價。為防止下次再出現這種情況,修改了一些配置,僅供讀者參考。首先,搞個 站 mkdir trash 或者直接用系統 站 ln s local share trash files trash 推薦後者 接著,修改 bashrc檔案。mkdir p trash ...

防止誤刪除,重新定義rm命令

linux系統中刪除檔案是很難恢復的,為了防止誤刪除之後重要檔案無法恢復,可以把rm命令重新定義,新增乙個 站資料夾,把刪除的檔案移動到 站資料夾,確認無誤之後再清空 站。重新定義rm命令 定義乙個 站目錄 trash path trash 判斷 站目錄是否存在,如果不存在直接建立if d tras...