Contexte: L'histoire de l'implémentation d'une poubelle sur la ligne de commande dans Golang
gomi is a simple trash script that works on CLI, written in golang
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.
Un outil de corbeille similaire bien connu est
Command line interface to the freedesktop.org trashcan.
Cross-platform command-line app for moving files and directories to the trash - A safer alternative to
rm
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.
Supprimer: package:
$ gomi file
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
- "*~"
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.
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.
Vous pouvez également utiliser Windows.
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.
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"
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