trash-cliprovides a command line interface trashcan utility compliant with the FreeDesktop.org Trash Specification. It remembers the name, original path, deletion date, and permissions of each trashed file.
Definitely is a great tool for GNU/Linux. I’ve bind it to rm using a alias as the follows:
alias rm='trash-put -v'
You can restore deleted files using the command line as well:
$ restore-trash
More information on trash(1) and restore-trash(1) manual pages.