Made Gomi, un outil de corbeille pour RM en langue Go

Contexte: L'histoire de l'implémentation d'une poubelle sur la ligne de commande dans Golang

logo

b4b4r07/gomi - GitHub

gomi is a simple trash script that works on CLI, written in golang

DEMO

Qu'est-ce que gomi?

Outil de corbeille pour CLI en langue Go. Lors de la suppression d'un fichier Vous pouvez le regrouper dans une corbeille dédiée (ou corbeille système) avant de vraiment le supprimer.

--Travailler avec un binaire --Facile à restaurer avec un fonctionnement interactif

Tout le monde, je pense que vous utiliserez rm pour supprimer des fichiers, mais la suppression accidentelle de fichiers importants est quelque chose que même les débutants font parfois. De plus, il y a des moments où vous pensez que vous n'en avez pas besoin et que vous l'effacez et en ressentez le besoin quelques jours plus tard.

Dans ce gomi, il est une fois mis en commun dans une corbeille dédiée avant d'être supprimé. De plus, l'historique est enregistré à ce moment-là, vous pouvez donc facilement vous y référer ultérieurement. Il peut également être facilement restauré avec une interface utilisateur interactive.

Fonctionnalité

Un outil de corbeille similaire bien connu est

Cependant, le premier nécessite Python et le second nécessite Node.js. gomi est un binaire unique et peut être exécuté dans n'importe quel environnement.

De plus, trash-cli permet des restaurations interactives, mais ce n'est pas une très bonne interface utilisateur car c'est un type numérique. trash a l'avantage de pouvoir travailler avec la corbeille du système, mais il peut être facilement restauré à partir de la ligne de commande (bien qu'il puisse être envoyé à la corbeille sur la ligne de commande). Je ne pouvais pas. Ce gomi surmonte les lacunes des deux, et a la possibilité de QuickLook des fichiers dans la corbeille comme une fonctionnalité supplémentaire. Le nom du fichier supprimé peut être écrasé et il y a un certain nombre de fois où vous souhaitez vérifier rapidement le contenu. Dans un tel cas, il est pratique d'avoir une fonction pour jeter un coup d'œil.

Utilisez gomi -s filename si vous voulez l'envoyer dans la corbeille du système au lieu de la corbeille gomi. Bien sûr, vous pouvez le restaurer avec gomi -r, ou vous pouvez le restaurer avec la fonction" return "de la corbeille.

quicklook.png

Comment utiliser

  1. Supprimer: package:

    $ gomi file
    
  2. Recherchez la corbeille: mag:

    $ gomi -r
    

L'interface utilisateur du mode de restauration a été implémentée avec une grande référence à peco. De plus, si vous supprimez à nouveau le fichier dans ~ / .gomi, il sera vraiment supprimé.

De plus, si vous passez un argument à -r, il restaurera sur ce chemin (si vous ne passez pas d'argument, il restaurera à l'emplacement d'origine). Vous pouvez restaurer le répertoire courant en faisant gomi -r ..

Il lit également le fichier de configuration du format YAML. ʻIgnore_files` vous permet de spécifier les fichiers que vous ne voulez pas conserver dans l'historique, comme avec des jokers (reste dans la corbeille).

yaml:~/.gomi/config.yaml


ignore_files:
  - .DS_Store
  - "*~"

Jetez un œil au dossier

Il s'agit d'une fonction similaire à QuickLook sous OS X. Vous pouvez basculer avec C-q </ kbd>. Il vous aide à voir quel était le fichier que vous souhaitez restaurer.

Dans le cas d'un répertoire, il énumère récursivement les fichiers et sous-répertoires de son contenu.

quicklook.png

Même dans QuickLook, la liaison de clé en mode de restauration est active, vous pouvez donc vous déplacer entre les fichiers suivants tout en effectuant QuickLook avec * C-n * etc., ou vous pouvez exécuter la restauration avec Entrée.

Plateforme croisée

Vous pouvez également utiliser Windows.

gomi_windows.png

Installation

Si vous êtes un utilisateur Mac utilisant Homebrew, ce qui suit est OK (Linux n'est pas pris en charge).

$ brew tap b4b4r07/gomi
$ brew install gomi

Sinon, vous pouvez l'installer ci-dessous ou à partir de GitHub Releases.

$ go get -u github.com/b4b4r07/gomi

S'il ne s'agit que d'un binaire, je l'ai téléchargé sur GitHub Releases.

Réglage

Bien que cela ne soit pas obligatoire, nous vous recommandons de remplacer la commande rm par gomi. Le nombre de types est réduit de 2 caractères (gomi rm), et vous pouvez également supprimer l'habitude de la main telle quelle.

~/.bashrc


alias rm="gomi"

Livres de référence:

Je l'ai créé avec beaucoup de réflexion et d'élan. Désormais, je prévois de le maintenir (pour moi-même) et d'améliorer le code source et les fonctions.

Recommended Posts

Made Gomi, un outil de corbeille pour RM en langue Go
J'ai créé un outil de mot de passe en Python.
J'ai fait une sorte d'outil de traitement d'image simple en langage Go.
Création d'un outil de gestion de bibliothèque d'en-tête uniquement pour C / C ++
Créer un serveur Web en langage Go (net / http) (1)
J'ai écrit un outil CLI en langue Go pour afficher le flux de balises de Qiita dans CLI
Remarques sur l'intégration du langage de script dans les scripts bash
Remarque 2 pour intégrer le langage de script dans un script bash
Hello World en langue GO
Création d'une bibliothèque pour python capable de gérer facilement la division morphologique
J'ai écrit un tri-arbre qui peut être utilisé pour l'implémentation de dictionnaire à grande vitesse en langage D et Python
Essayez d'implémenter Yuma en langage Go
Démarrez avec SQLite dans un langage de programmation
Création d'un outil de test AtCoder pour Python
Ecrire un test en langue GO + gin
Faites quelque chose orienté objet dans le langage GO
J'ai créé un modèle de projet Python générique
Ce que les utilisateurs de Java ont pensé d'utiliser le langage Go pendant une journée