An open API service indexing awesome lists of open source software.

https://github.com/aminezouitine/rmt.rs

Rmt is similar to the rm command but saves the deleted elements in the trash and restores them. Rmt is written in Rust 🦀
https://github.com/aminezouitine/rmt.rs

cli command-line command-line-tool contributions-welcome help-wanted open-source rm rust

Last synced: 4 months ago
JSON representation

Rmt is similar to the rm command but saves the deleted elements in the trash and restores them. Rmt is written in Rust 🦀

Awesome Lists containing this project

README

          

# 🗑️ Rmt.rs




Fun fact: Stable diffusion generated this logo 🎨

**Rmt** is similar to the **rm** command, but it allows me to **save the deleted elements in the trash**. If you wish, you can restore the previously deleted elements of your choice (or delete them forever) with a **cli**.

![UmzJ1r8Z7D](https://user-images.githubusercontent.com/53370597/195318131-e1b3ad8b-4022-41c7-a226-3b9a28a1ee94.gif)

## 👨🏽‍💻 Installation

### ⚡️ Quick start

Download the binary depending on your configuration here: https://github.com/AmineZouitine/rmt.rs/releases

Then you just need to enter this command in your terminal:
```sh
tar -xf rmt && sudo mv rmt /usr/local/bin
````

### 😎 Pro tip (optional)

Add **rmt** as an **alias** instead of the **rm** command.
## Features

### 🚮 Delete an element (but it is saved in the trash don't worry)

```sh
rmt [OPTION]... [FILE|FOLDER]...

Exemples:
rmt text.txt
rmt * -- -text.txt
rmt folder test.txt *.sh
```
✨ I like to use **-f** option, to remove all the warnings.

### 📺 Launch GUI to restore or flush elements

```sh
rmt --td
```

### ❌ Flush all element from the trash
```sh
rmt --tf
```

### 🔎 Informations about the trash

```sh
rmt --ti
```

## 🔧 Using the configuration file (Not stable yet)

You can customize the behavior of the trash bin by editing the configuration file located at **~/.trash_rmt/config_rmt.yml**.

Currently, you have the option to encrypt your data so that it becomes unreadable from the trash. Compression is a feature that will be available in the future.

```yml
compression: true
encryption: true
trash: null
```

## 🫵 Contribution

You can find all the information in the file [**CONTRIBUTING.md**](./CONTRIBUTING.md). Hoping to see you soon in my pull request 😊