trash.sh¶
qqAys/trash.sh - GitHub | 简体中文
trash.sh
is a script that serves as a safe alternative to rm
, allowing for secure handling of files and directories by moving them to a trash bin instead of permanently deleting them.
If you use trash.sh
as described below, rm
essentially becomes mv
. trash.sh
handles moving items to the trash for you, so please be aware of this change!
Installation¶
-
Download the
trash.sh
file to your user directory:Bash -
Add execute permissions:
Bash -
Add an alias (doesn't have to be
rm
) to your.bashrc
or.zshrc
:
Usage¶
"Deleting" Files or Directories¶
To move files or directories to the trash, use the rm
command as usual:
Bash | |
---|---|
You will receive a confirmation prompt before "deletion."
Emptying the Trash¶
Emptying the trash involves calling /bin/rm
with the -rf
parameter to clear the ~/.trash
folder. This action is irreversible.
To empty the trash, use the -c
parameter:
Bash | |
---|---|
Trash Structure¶
Files you "delete" will be renamed with the current timestamp and moved (mv
) to the ~/.trash
folder. If you "delete" a directory, its contents will not be renamed. The structure of the trash looks like this:
Bash | |
---|---|
Note ⚠️¶
Using trash.sh
does not guarantee that data or files will be securely "deleted." You should still back up important data to ensure its safety.
License¶
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing¶
Please submit a pull request or open an issue to discuss your ideas.