Come già sai, i comandi che esegui sulla tua shell verranno salvati in .bash_history file e puoi visualizzarli in qualsiasi momento utilizzando la cronologia comando o utilizzando i tasti freccia su/giù o effettuando una ricerca inversa utilizzando CTRL+R combinazione di tasti dal Terminale. Tuttavia è possibile visualizzarli, accedervi e rieseguirli solo dalla stessa macchina. Cosa succede se si desidera accedere alla cronologia del Terminale da un altro sistema sulla rete? Nessun problema! Ecco dove "Bashhub" l'utilità viene in aiuto. È un servizio web in cui puoi salvare tutti i comandi e accedervi da qualsiasi luogo. Bashhub salva tutti i comandi immessi in tutte le sessioni e i sistemi, quindi puoi accedervi da qualsiasi luogo. In parole povere, l'intera cronologia di BASH sarà disponibile nel cloud e l'intera cronologia di bash sarà indicizzata e ricercabile! Bashhub è completamente gratuito e open source.
Tutti i comandi verranno archiviati nel database di Bashhub che è crittografato utilizzando crittografia a livello di archiviazione tramite LUKS . Bashhub genererà un token di identificazione univoco per ciascun utente. Questo token è obbligatorio per eseguire qualsiasi azione per conto di un utente per il comando API. I comandi registrati per conto di un utente sono accessibili solo utilizzando il token di autenticazione di quell'utente. Al momento non è possibile condividere questi comandi e non sono accessibili pubblicamente. Inoltre Bashhub consente di ignorare alcuni comandi che contengono informazioni sensibili come la password dell'utente. Puoi tranquillamente ignorare tali comandi dalla registrazione di Bashhub per disattivare completamente la registrazione in qualsiasi momento.
Installazione di Bashhub
Assicurati di aver installato Python 2.7 sul tuo sistema. Python 2.7 è disponibile nei repository predefiniti della maggior parte delle distribuzioni Linux, quindi puoi installarlo usando il gestore di pacchetti della tua distribuzione. Ad esempio, esegui il seguente comando per installare python 2.7 su Debian e varianti.
$ sudo apt-get install python2.7
Dopo aver installato Python 2.7, esegui uno qualsiasi dei comandi forniti di seguito a seconda della SHELL che usi.
Se la tua shell è BASH , inserisci il seguente comando:
$ curl -OL https://bashhub.com/setup && bash setup
Per Zsh :
$ curl -OL https://bashhub.com/setup && zsh setup
Dopo pochi minuti, ti verrà chiesto di creare un nuovo account se non ne hai già uno. Inserisci un ID e-mail, un nome utente e una password validi e il nome del tuo sistema.
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.
Fatto! Il tuo account è stato creato su Bashhub. Puoi accedere al tuo profilo su https://bashhub.com/
Se sei un utente esistente, digita "n" quando ti viene chiesto "Sei un nuovo utente?" e inserisci la tua email e password registrati.
Chiudi e riavvia il Terminale per iniziare a registrare la cronologia del Terminale.
Accedi alla cronologia del tuo terminale da qualsiasi luogo utilizzando Bashhub
Ora, esegui qualsiasi comando casuale per verificare se funziona davvero.
Ho eseguito i seguenti comandi:
clear pwd uname -a ls -l touch test.txt
Ora è il momento di controllare quali comandi ho inserito.
Per farlo, esegui:
$ bh
Esempio di output:
Bashhub in azione
Questo comando visualizzerà gli ultimi 100 comandi per impostazione predefinita . Puoi ignorare il limite predefinito utilizzando il flag "-n".
Per visualizzare solo gli ultimi 10 comandi, esegui:
$ bh -n 10
Visualizza i comandi utilizzando un termine specifico
Puoi anche visualizzare un comando specifico utilizzando un termine specifico, ad esempio "ls".
$ bh -n 10 "ls"
Se desideri cercare un comando specifico con un termine di ricerca ed eseguirlo contemporaneamente, utilizza "-i" flag come mostrato di seguito.
$ bh -i "ls"
Se hai eseguito il comando più di una volta, scegli il comando che desideri eseguire dall'elenco e premi invio.
Come vedi sopra, ho eseguito il comando "ls" tre volte.
Visualizza l'elenco dei comandi eseguiti in una directory
Per visualizzare l'elenco degli ultimi comandi eseguiti nella directory di lavoro corrente, usa il flag "-d".
$ bh -d
Bashhub visualizzerà i comandi utilizzati più di recente.
Ricerca interattiva
L'altra caratteristica notevole di Bashhub è la ricerca interattiva. È simile alla ricerca inversa, puoi richiamarla premendo bh -i o ctrl + b chiavi.
Facciamo una ricerca interattiva.
$ bh -i (bashhub-i-search): uname
Il comando precedente cercherà un comando che ha una stringa "uname". Puoi eseguire la ricerca interattiva nella directory di lavoro corrente usando il flag "-d" come mostrato di seguito.
$ bh -i -d (bashhub-i-search): ls
Visualizzare i dettagli di un comando
Dalla ricerca interattiva, puoi anche visualizzare le informazioni dettagliate di un comando.
Innanzitutto avvia la ricerca interattiva:
$ bh -i
Quindi scegli il comando dall'elenco e premi i tasti "i" o "barra spaziatrice" per visualizzare i dettagli del comando selezionato.
Elimina comandi
Bashhub ti consente di eliminare uno o più comandi particolari in qualsiasi momento dal database Bashub. Per farlo, avvia la ricerca interattiva:
$ bh -i "ls"
Scegli il comando che desideri eliminare e premi i tasti "Backspace" o "Elimina" dalla tastiera.
Ignora comandi particolari dalla registrazione
Questa è un'altra utile funzionalità dell'utilità Bashhub. Puoi impedire che un comando particolare che contiene informazioni sensibili come nome utente o password venga registrato da bashhub.
Per farlo, aggiungi semplicemente #ignore alla fine del comando.
Esempio:
$ uname -r #ignore
Il comando sopra "uname -r" non verrà registrato. Tieni presente che se hai già configurato la cronologia per ignorare lo spazio , Bash non salverà i comandi se li eseguirà con uno spazio all'inizio di quei comandi. In tal caso, non è necessario utilizzare "#ignore".
Disabilita i comandi di registrazione
Se vuoi che Bashhub registri i comandi, puoi attivarlo eseguendo il seguente comando:
$ bashhub off
I comandi non verranno più registrati finché non lo accendi.
Ricorda che per impostazione predefinita ciò influisce solo sulla sessione della shell corrente. Per disabilitare la registrazione di tutte le sessioni a livello globale, esegui il comando seguente:
$ bashhub off --global
Per riattivare la registrazione Bashhub. corri:
$ bashhub on
Aggiorna Bashhub
Basta eseguire nuovamente il comando di installazione per aggiornare Bashhub. In alternativa, esegui il comando "bashhub update" per aggiornarlo.
Accedi a Bashhub da un sistema diverso
Tieni presente che non è necessario eseguire "bh" nello stesso sistema stesso. Poiché tutti i comandi sono archiviati nel database di Bashhub, puoi visualizzare tutta la cronologia del tuo terminale da qualsiasi sistema. Assicurati di aver installato il client Bashhub sul sistema e accedi con l'ID e-mail registrato e la password.
Are you a new user? [Y/n] n Please enter your bashhub credentials Username: sk Password:
Controlla le statistiche degli utenti
$ bashhub status
Esempio di output:
=== 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
Disinstalla Bashhub
Se sei preoccupato per le implicazioni sulla privacy e sulla sicurezza, Bashhub non fa per te. Puoi disinstallarlo rimuovendo la seguente directory dal tuo sistema.
$ rm -r ~/.bashhub
Per maggiori dettagli, fare riferimento alla sezione della guida:
$ 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