Impara Linux

Comando cronologia in Linux con esempi

Comando cronologia in Linux con esempi

Il comando history in Linux non è un gergo complesso. È esattamente quello che pensi che sia e non c'è nessun significato nascosto dietro di esso. Lo stesso modo in cui guardi la cronologia del tuo browser dopo una lunga giornata su Internet è come percepisci il comando della cronologia. Si tratta di tenere traccia dei tuoi movimenti e delle tue azioni precedenti, ma in questo caso si tratta di un terminale Linux o di una riga di comando.

Pertanto, possiamo definire comodamente il comando history sotto il dominio Linux come un modo per visualizzare in anteprima i comandi eseguiti in precedenza. In questo caso, possiamo considerare il terminale come un browser in cui si eseguono vari comandi in un arco di tempo continuo. Questi comandi eseguiti vengono interpretati individualmente come eventi. Ad ogni evento viene quindi assegnato un numero di evento. Pertanto, abbiamo comandi con ID come numeri di evento memorizzati in un file di cronologia dopo la loro esecuzione da terminale.

Il significato degli ID evento è evidente quando in seguito potresti aver bisogno di richiamare un comando specifico che hai eseguito. Inoltre, potresti voler modificare un comando eseguito in precedenza. Pertanto, possiamo concludere la comprensione introduttiva del comando cronologia per visualizzare tutti i comandi eseguiti in precedenza o solo un comando specifico sul terminale. Inoltre, non dovremmo dimenticare l'opzione praticabile di modificare il comando elencato.

Lasciare che la storia si ripeta

Possiamo iniziare questo articolo storico in modo divertente e citando George Santayana. Questo famoso individuo associa l'incapacità di ricordare il passato con la maledizione di ripeterlo. Tuttavia, quando entriamo nell'universo Linux, questa citazione si qualifica solo come un mito. È perché la filosofia di Linux è realisticamente l'opposto della citazione di George Santayana dichiarata. Quando sei sul terminale Linux, se non riesci a ricordare un'azione passata, non c'è bisogno di preoccuparsene perché le probabilità sono contro che si dissolvano.

A meno che, ovviamente, non diventi un maestro del comando cronologia di Linux, allora puoi viaggiare nel tempo nel passato e correggere i tuoi precedenti peccati terminali se questo è il tuo desiderio. L'uso del comando cronologia di Linux non è in alcun modo associato alla pigrizia. Risparmia tempo grazie all'efficienza. Man mano che avanzi nella padronanza del sistema operativo Linux, ti ritroverai a lavorare con comandi più lunghi e complicati. Anche se confronti il ​​tuo QI con quello di Albert Einstein, non avrai il tempo di ricordare tutti i comandi che esegui e presto inizierai a fare errori terribili. Lavorare sul terminale Linux esporrà un individuo a due tipi di errori:

Puoi pensare al comando della cronologia come al guerriero ninja che elimina questi due tipi di errori per aumentare la tua produttività. Una parola di pensiero prima di iniziare il tutorial, c'è di più nel comando della cronologia di Linux che usare semplicemente il tasto freccia su della tastiera. Il nostro approccio ti farà sembrare più professionale.

Inserisci il comando Cronologia di Linux

Avviare il comando history è facile come digitare la parola history sul tuo terminale Linux. Quindi accendi il terminale e supera questo semplice test di ortografia.

storia

comando storico

Se premi invio, otterrai un elenco di tutti i comandi che hai eseguito sul terminale con i loro ID o numeri di evento assegnati. Il sistema di numerazione utilizzato dall'interfaccia del terminale Linux mostra il comando più vecchio in cima all'elenco e il comando appena digitato in fondo all'elenco. Come puoi vedere, al comando della cronologia che ho appena digitato è stato assegnato il numero id 24.

lista dei comandi della cronologia

Considera lo scenario di un terminale Linux molto attivo. Se dovessimo digitare il comando history su questo terminale, l'output sarebbe, diciamo, un elenco di 500 comandi salvati sul file history. Quindi il comando cronologia è utile per filtrare un segmento raggruppato specificato di comandi. Diciamo di voler visualizzare gli ultimi 10 comandi eseguiti sul terminale. Filtreremo il nostro modo attraverso il terminale digitando quanto segue.

storia 10

ultimi dieci comandi sul file di cronologia

Come puoi vedere, il comando "history 10" ha filtrato gli ultimi dieci comandi utilizzati su questo terminale e li ha elencati sul nostro terminale con l'inclusione del comando "history 10".

Questo è un modo per raggiungere questo obiettivo. Un altro modo nerd per farlo è inviare il comando della cronologia con un altro comando chiamato comando di coda. Digita il seguente comando, come riportato nello screenshot qui sotto.

storia | coda -n 10

usando il comando tail per visualizzare gli ultimi dieci comandi sul file di cronologia

Il comando elenca anche gli ultimi 10 comandi eseguiti sul terminale Linux, incluso quello che abbiamo appena eseguito.

In realtà ripetere la storia

È tempo per la parte divertente dell'uso del comando cronologia history. Che ne dici di iniziare lasciando che la storia si ripeta?. Dato che hai familiarità con i comandi della cronologia e i loro ID evento associati, torniamo al terminale. Per ripetere un comando elencato in modo specifico, prendi nota del suo ID evento e deride il seguente comando, come illustrato nello screenshot. Non utilizzare spazi durante la digitazione del comando.

!17

utilizzando l'ID evento per eseguire un comando precedente

Nel mio caso, volevo visualizzare il file Linux /etc/host e mi è stata richiesta una password di autenticazione. Non appena le mie credenziali sono state approvate, il comando si è eseguito da solo.

comando eseguito sul file di cronologia

C'è anche un caso in cui vuoi ripetere il comando precedente che hai eseguito. Raggiungere questo obiettivo è facile come digitare due punti esclamativi sul tuo terminale. Non usare gli spazi.

!!

rieseguire il comando precedente

comando cronologia rieseguito

Come puoi vedere, il comando ci ha riportato al file Linux /etc/host che avevo aperto in precedenza. Ci è voluto il doppio comando esclamativo per riutilizzare il mio comando precedente, che è stato eseguito da solo. Forse potresti essere stato abituato al tasto freccia su della tastiera, che richiedeva di eseguire due azioni, scorrere verso l'alto una volta e quindi premere il pulsante Invio. Tuttavia, il doppio comando esclamativo sembra più rapido e professionale in quanto è necessario eseguire solo una singola azione.

Poiché il comando che ho usato richiede i privilegi di Sudo, posso anteporre i miei doppi punti esclamativi con un comando Sudo per ottenere lo stesso risultato previsto.

sudo !!

gestire il comando della cronologia del sudo

Un singolo numero esclamativo combinato con un id evento eseguirà il comando visualizzato legato a quell'id. Un doppio punto esclamativo ti fa eseguire il comando utilizzato più di recente con l'opzione di anteporre il comando con Sudo se richiede un utente sudoer per l'esecuzione.

Potresti anche voler portare la tua nerdness al livello successivo e volere un modo per ripetere il tuo 3rd o 6questo comando precedente. In questo caso, dovrai prendere nota dell'id evento associato al comando. Quindi combinerai l'ID evento con un trattino e un singolo punto esclamativo come segue.

!-21

eseguire qualsiasi comando precedente sul file di cronologia

Da parte mia, volevo chiedere informazioni sul mio 21sto comando precedente, e si è rivelata una richiesta ping per il mio indirizzo IP localhost. L'utilizzo di questa sequenza di comandi è utile quando si desidera controcontrollare un comando eseguito in precedenza e determinare se i parametri utilizzati per eseguirlo sono ancora validi o non distorti.

Stringhe di comando

Diciamo che hai eseguito qualche comando sul tuo terminale, ma non hai memorizzato completamente il comando. Sei comunque sicuro dell'efficacia del comando e di come ti ha aiutato. Conoscere una parte della stringa che costituisce questo comando è molto utile. Nel mio caso, sono molto sicuro di eseguire una volta un comando per aggiornare il mio sistema. Diciamo che devo ancora memorizzare completamente questo comando di aggiornamento del sistema, ma so che una parte del comando contiene la stringa "apt" come dicitura iniziale del comando. Per usare di nuovo questo comando, digiterò il seguente comando sul mio terminale. Tuttavia, poiché la maggior parte dei comandi di aggiornamento del sistema richiede l'autorizzazione di un utente sudoer, aggiungerò il prefisso alla stringa di comando che voglio usare con Sudo.

sudo !adatto

comando cronologia con stringhe

Come puoi vedere, ho aggiornato con successo il mio sistema Linux dalla riga di comando senza utilizzare il comando completo "sudo apt update". Questo hack dal manuale dei comandi della cronologia di Linux è utile quando si tratta di comandi più lunghi che potrebbero essere noiosi da digitare o potrebbero portare a un fastidioso errore di battitura. Potresti modificare un file il cui percorso relativo produce un comando lungo o semplicemente copiare file. In ogni caso, hai bisogno di un approccio senza stress per riciclare i tuoi comandi ripetitivi.

Dal momento che abbiamo toccato l'aspetto dell'autorizzazione degli utenti sudoer, potremmo finire per sbattere contro un muro se non stiamo attenti. La maggior parte dei comandi degli utenti con privilegi sudoer richiederà il prefisso Sudo per l'esecuzione. Quindi digitando un comando stringa come '!sudo' per i comandi che iniziano con Sudo potrebbe non essere sufficiente in quanto potrebbe portare all'esecuzione di una sequenza di comandi indesiderata. Tuttavia, possiamo fornire una rete di sicurezza attraverso l'uso del parametro :p che è un modificatore di stampa. Pertanto, combinando il nostro comando stringa con esso dovrebbe produrre output come il seguente.

!sudo:p

comando cronologia con il modificatore di stampa

Il comando ha stampato i comandi Sudo disponibili che ho appena usato. Per riutilizzare questo comando, userò il tasto freccia su della tastiera e premerò invio per eseguirlo. Se l'elenco mostrasse più di un comando Sudo, utilizzerei comunque il tasto freccia su per passare al comando Sudo specifico che volevo riutilizzare.

Queste non sono tutte le opzioni che abbiamo per gestire le stringhe. C'è anche un caso in cui conosci solo una particolare stringa definita nel comando che vuoi usare. È un caso in cui non sei sicuro delle prime stringhe che definiscono il comando che hai usato in precedenza. Qui utilizzerai sia il punto esclamativo che il punto interrogativo per trovare il tuo comando.

!?ping

eseguire un comando specifico dal file di cronologia tramite stringhe

ho usato il '!?ping' sequenza di comandi, che ha eseguito istantaneamente la mia precedente richiesta di ping. Puoi usare questa sequenza per eseguire comandi precedenti sul tuo terminale che sono unici per gli altri.

Ricerca interattiva

Supponiamo che tu abbia diversi comandi precedenti che hai eseguito e che abbiano sequenze di stringhe simili o corrispondenti. Tra tutti questi segnali di corrispondenza, potresti voler eseguire solo una sequenza di comandi specifica in quella piega. Una ricerca interattiva ti consente di arrivare a questo comando che vuoi eseguire. Per avviare la ricerca interattiva, combinare i tasti Ctrl+r. Il display del tuo terminale Linux dovrebbe essere simile a quello qui sotto.

comando cronologia e ricerca interattiva

Basta digitare l'indizio di ricerca per il comando che devi eseguire. Nel mio caso, ho digitato "apt" e, come puoi vedere, è apparso tra l'apostrofo e il backtick. Puoi inserire più stringhe di indizi sul comando interrogato e la ricerca interattiva aggiornerà continuamente i risultati correlati. Premendo invio verrà eseguito immediatamente il comando trovato.

sudo apt update

utilizzando la ricerca interattiva

Inoltre, potresti voler modificare il comando trovato prima di eseguirlo. Per farlo, usa le frecce sinistra e destra della tastiera. Il comando trovato verrà ora visualizzato sul terminale, dove è possibile apportare le modifiche necessarie.

sudo apt update && cd FOSSLinux

modificare una ricerca interattiva

Eliminazione dei comandi della cronologia

Finora, ora puoi recuperare, interrogare, aggiornare ed eseguire comandi dal file di cronologia. Tuttavia, potresti cercare un modo per svuotare l'elenco della cronologia di alcuni o tutti i suoi comandi. Forse sei quel tipo di utente che non vuole che nessuno tenga traccia di come ha usato il proprio sistema Linux. Il parametro -d ti aiuta a sbarazzarti di alcuni comandi indesiderati sul file di cronologia. Nel mio caso, il mio file di cronologia contiene un comando errato con un numero ID evento 44 an.

trovare il comando della cronologia da eliminare

Per eliminare questo comando errato, farò quanto segue sul mio terminale.

storia -d 44

utilizzando l'ID evento per eliminare il comando cronologia

L'esecuzione di nuovo del comando "cronologia" mostra che il comando con errori di ortografia è stato eliminato.

confermando la cancellazione del comando storico

L'opzione di eliminazione non si applica solo a un singolo comando, poiché copre anche una serie di comandi. Ad esempio, considera il seguente comando.

storia -d 10 20

Questo comando eliminerà le voci del file di cronologia dall'ID evento 10 all'ID evento 20. Un altro comando della cronologia da considerare è il seguente.

storia -d -6

Questo comando eliminerà gli ultimi sei comandi che hai digitato sul terminale memorizzato nel file di cronologia.

Se vuoi cancellare tutto dall'elenco dei file di cronologia, puoi prendere in giro il seguente comando.

storia -c

cancella tutti i comandi della cronologia

Conclusione

Ora hai tutte le informazioni necessarie per decidere se la cronologia del tuo terminale deve o non deve ripetersi. Per gli utenti avanzati, ci sono casi in cui potresti eseguire un'app tramite il terminale e ti potrebbe essere richiesto di lasciare una scia di informazioni sensibili. Il file della cronologia memorizza anche tali dati sensibili. Pertanto, è buona norma cancellare sempre il file della cronologia prima di uscire dalla riga di comando, soprattutto nei casi che comportano l'archiviazione di dati sensibili. Il comando cronologia ti dà il potere di rivivere i bei tempi al terminale e anche di correggere i tuoi errori passati della riga di comando.

Motori di gioco gratuiti e open source per lo sviluppo di giochi Linux
Questo articolo tratterà un elenco di motori di gioco gratuiti e open source che possono essere utilizzati per lo sviluppo di giochi 2D e 3D su Linux....
Tutorial Shadow of the Tomb Raider per Linux
Shadow of the Tomb Raider è la dodicesima aggiunta alla serie Tomb Raider, un franchise di giochi d'azione e avventura creato da Eidos Montreal. Il gi...
Come aumentare gli FPS in Linux?
FPS sta per Fotogrammi al secondo. Il compito dell'FPS è misurare il frame rate nelle riproduzioni video o nelle prestazioni di gioco game. In parole ...