Comme vous le savez déjà, les commandes que vous exécutez sur votre shell seront enregistrées dans .bash_history fichier et vous pouvez les consulter à tout moment en utilisant l'historique ou en utilisant les touches fléchées Haut/Bas ou en faisant une recherche inversée en utilisant CTRL+R combinaison de touches depuis le Terminal. Cependant, vous ne pouvez les afficher, y accéder et les réexécuter qu'à partir de la même machine elle-même. Que faire si vous souhaitez accéder à l'historique de votre Terminal à partir d'un autre système sur le réseau ? Aucun problème! Voici où "Bashhub" utilitaire vient en aide. Il s'agit d'un service Web où vous pouvez enregistrer toutes les commandes et y accéder de n'importe où. Bashhub enregistre toutes les commandes saisies dans toutes les sessions et tous les systèmes, afin que vous puissiez y accéder de n'importe où. Pour faire simple, tout votre historique BASH sera disponible dans le cloud et tout l'historique bash sera indexé et consultable ! Bashhub est entièrement gratuit et open source.
Toutes les commandes seront stockées dans la base de données de Bashhub qui est chiffrée à l'aide du chiffrement au niveau du stockage via LUKS . Bashhub générera un jeton d'identification unique pour chaque utilisateur. Ce jeton est obligatoire pour effectuer toute action au nom d'un utilisateur pour la commande api. Les commandes enregistrées au nom d'un utilisateur ne sont accessibles qu'à l'aide du jeton d'authentification de cet utilisateur. Il n'existe actuellement aucun moyen de partager ces commandes et elles ne sont pas accessibles au public. Bashhub vous permet également d'ignorer certaines commandes contenant des informations sensibles telles que le mot de passe de l'utilisateur. Vous pouvez ignorer en toute sécurité l'enregistrement de ces commandes par Bashhub pour désactiver complètement l'enregistrement à tout moment.
Installer Bashhub
Assurez-vous d'avoir installé Python 2.7 sur votre système. Python 2.7 est disponible dans les référentiels par défaut de la plupart des distributions Linux, vous pouvez donc l'installer à l'aide du gestionnaire de packages de votre distribution. Par exemple, exécutez la commande suivante pour installer Python 2.7 sur Debian et ses variantes.
$ sudo apt-get install python2.7
Après avoir installé Python 2.7, exécutez l'une des commandes ci-dessous en fonction du SHELL que vous utilisez.
Si votre shell est BASH , saisissez la commande suivante :
$ curl -OL https://bashhub.com/setup && bash setup
Pour Zsh :
$ curl -OL https://bashhub.com/setup && zsh setup
Après quelques minutes, il vous sera demandé de créer un nouveau compte si vous n'en avez pas déjà un. Entrez un identifiant de messagerie valide, un nom d'utilisateur et un mot de passe, ainsi que le nom de votre système.
What's your email? [email protected] What username would you like? sk What password? Email: [email protected] Username: sk Are these correct? [Y/n] y Registered new user sk What do you want to call this system? For example Home, File Server, ect. [ubuntuserver]: Registered a new system ubuntuserver Should be good to go! Please close and restart your terminal session.
Fait! Votre compte a été créé sur Bashhub. Vous pouvez accéder à votre profil sur https://bashhub.com/
Si vous êtes un utilisateur existant, tapez "n" lorsqu'on vous demande "Êtes-vous un nouvel utilisateur ?" et entrez votre e-mail et votre mot de passe enregistrés.
Fermez et redémarrez votre terminal pour commencer à enregistrer l'historique de votre terminal.
Accéder à l'historique de votre terminal depuis n'importe où à l'aide de Bashhub
Maintenant, exécutez des commandes aléatoires pour vérifier si cela fonctionne vraiment.
J'ai exécuté les commandes suivantes :
clear pwd uname -a ls -l touch test.txt
Il est maintenant temps de vérifier les commandes que j'ai saisies.
Pour ce faire, exécutez :
$ bh
Exemple de sortie :
Bashhub en action
Cette commande affichera les 100 dernières commandes par défaut . Vous pouvez remplacer la limite par défaut en utilisant l'indicateur "-n".
Pour afficher uniquement les 10 dernières commandes, exécutez :
$ bh -n 10
Afficher les commandes en utilisant un terme spécifique
Vous pouvez également afficher une commande spécifique en utilisant un terme spécifique, par exemple "ls".
$ bh -n 10 "ls"
Si vous souhaitez rechercher une commande spécifique avec un terme de recherche et l'exécuter en même temps, utilisez "-i" drapeau comme indiqué ci-dessous.
$ bh -i "ls"
Si vous avez exécuté la commande plusieurs fois, choisissez la commande que vous souhaitez exécuter dans la liste et appuyez sur Entrée.
Comme vous le voyez ci-dessus, j'ai exécuté la commande "ls" trois fois.
Afficher la liste des commandes exécutées dans un répertoire
Pour afficher la liste des dernières commandes que vous avez exécutées dans le répertoire de travail courant, utilisez le drapeau "-d".
$ bh -d
Bashhub affichera les commandes les plus récemment utilisées.
Recherche interactive
L'autre caractéristique notable de Bashhub est la recherche interactive. C'est similaire à la recherche inversée, vous pouvez l'invoquer en appuyant soit sur bh -i ou ctrl + b clés.
Faisons une recherche interactive.
$ bh -i (bashhub-i-search): uname
La commande ci-dessus recherchera une commande contenant la chaîne "uname". Vous pouvez effectuer la recherche interactive dans le répertoire de travail actuel en utilisant le drapeau "-d" comme indiqué ci-dessous.
$ bh -i -d (bashhub-i-search): ls
Afficher les détails d'une commande
À partir de la recherche interactive, vous pouvez également afficher les informations détaillées d'une commande.
Lancez d'abord la recherche interactive :
$ bh -i
Choisissez ensuite la commande dans la liste et appuyez sur les touches "i" ou "barre d'espace" pour afficher les détails de la commande sélectionnée.
Supprimer des commandes
Bashhub vous permet de supprimer une ou plusieurs commandes particulières à tout moment de la base de données Bashub. Pour cela, lancez la recherche interactive :
$ bh -i "ls"
Choisissez la commande que vous souhaitez supprimer et appuyez sur les touches "Retour arrière" ou "Suppr" du clavier.
Ignorer les commandes particulières de l'enregistrement
Il s'agit d'une autre fonctionnalité utile de l'utilitaire Bashhub. Vous pouvez empêcher qu'une commande particulière contenant des informations sensibles telles que le nom d'utilisateur ou le mot de passe soit enregistrée par bashhub.
Pour ce faire, ajoutez simplement #ignore à la fin de la commande.
Exemple :
$ uname -r #ignore
La commande ci-dessus "uname -r" ne sera pas enregistrée. Veuillez noter que si vous avez déjà configuré votre historique pour ignorer l'espace , Bash n'enregistrera pas les commandes si elles sont exécutées avec un espace au début de ces commandes. Dans ce cas, vous n'avez pas besoin d'utiliser "#ignore".
Désactiver les commandes d'enregistrement
Si vous souhaitez que Bashhub enregistre les commandes, vous pouvez l'activer en exécutant la commande suivante :
$ bashhub off
Les commandes ne seront plus enregistrées jusqu'à ce que vous l'activiez.
N'oubliez pas que cela n'affecte que la session shell actuelle par défaut. Pour désactiver l'enregistrement de toutes les sessions globalement, exécutez la commande suivante :
$ bashhub off --global
Pour réactiver l'enregistrement Bashhub. exécuter :
$ bashhub on
Mettre à jour Bashhub
Relancez simplement la commande d'installation pour mettre à jour Bashhub. Vous pouvez également exécuter la commande "bashhub update" pour le mettre à jour.
Accéder à Bashhub depuis un autre système
Veuillez noter que vous n'avez pas besoin d'exécuter "bh" dans le même système lui-même. Étant donné que toutes les commandes sont stockées dans la base de données de Bashhub, vous pouvez afficher tout l'historique de votre terminal depuis n'importe quel système. Assurez-vous d'avoir installé le client Bashhub sur le système et connectez-vous avec l'identifiant de messagerie enregistré et le mot de passe.
Are you a new user? [Y/n] n Please enter your bashhub credentials Username: sk Password:
Vérifier les statistiques d'utilisateurs
$ bashhub status
Exemple de sortie :
=== Bashhub Status https://bashhub.com/sk Total Commands: 21 Total Sessions: 1 Total Systems: 1 === Session PID 1154 Started 2 hours ago Commands In Session: 21 Commands Today: 21
Désinstaller Bashhub
Si vous êtes préoccupé par les implications en matière de confidentialité et de sécurité, Bashhub n'est pas pour vous. Vous pouvez le désinstaller en supprimant le répertoire suivant de votre système.
$ rm -r ~/.bashhub
Pour plus de détails, consultez la section d'aide :
$ bashhub Usage: bashhub [OPTIONS] COMMAND [ARGS]... Bashhub command line client Options: -V, --version Display version -h, --help Show this message and exit. Commands: filter Check if a command is filtered from bashhub. help Show this message and exit off Turn off saving commands to Bashhub. on Turn on saving commands to Bashhub. save Save a command to Bashhub setup Run Bashhub user and system setup status Stats for this session and user update Update your Bashhub installation util Misc utils used by Bashhub version Display version