Avoiding a Powerful "rm"
As we all know, rm is a potent deletion tool in the Linux environment, which can easily lead to the tragic consequence of deleting important files without prompts. I’ve made this mistake myself today, it’s terrifying. I wanted to delete all the files starting with “head”. But somehow I typed rm head * instead of rm head*. All key files were gone unexpectedly without any prompt.
After this incident, I took a lot of time to recover the files, and on the other hand, I took some time to seek some protection tricks to avoid this kind of disaster in the future. We’ve got two methods to avoid this kind of disaster:
- force
rmto output prompts
$ alias rm = 'rm -i'Although this can force a check to be performed whenever a file is being deleted, it is a bit too verbose.
- move the deleted file to the Recycle Bin
- create a script file named
rmin the~/.local/bindirectory, and add the following content, give the script file executable permission
#!/bin/sh
mv $@ ~/.trash/- create the Recycle Bin directory
~/.trash
$ mkdir ~/.trashThe advantage is that all deletions are converted to moving to the Recycle Bin ~/.trash, but some options of rm are not supported by mv.
The current solution is not perfect yet, we need further exploration.