GNU/Linux >> Linux Esercitazione >  >> Ubuntu

La cronologia dei comandi sembra mancare le prime 75 righe?

Un paio di anni fa, ho eseguito l'aggiornamento automatico della distribuzione dal 14.04 al 16.04. Per la prima volta nella mia vita, ho potuto continuare a utilizzare il computer dopo l'aggiornamento automatico della distribuzione. Come al solito, i repository del software sono tutti munterati, quindi gli aggiornamenti di sistema non funzionano correttamente, ma me la sono cavata.

Tuttavia, eseguirò un'installazione pulita della 18.04. Per poter configurare più facilmente il mio sistema dopo l'installazione, ho esportato la cronologia dei miei comandi in un file di testo.

$ history > /.../20180915_Command_history.txt

Splendidamente, il file di testo risultante contiene numeri di riga. In qualche modo misteriosamente, il numero della prima riga è 76. Dopo aver esaminato le prime righe, sembra che ci fossero probabilmente dei comandi precedenti.

  1. I numeri di riga iniziano con 76 per qualche motivo?
  2. Se no, c'è un modo per vedere le righe da 1 a 75?

Risposta accettata:

Prima di tutto, se hai bisogno di un backup della cronologia della tua riga di comando, copia semplicemente questo file:

~/.bash_history

Ricorda che devi chiudere tutti i tuoi terminali o eseguire history -a per aggiungere tutti i comandi di quelle sessioni di cronologia al file di cronologia.

In caso negativo, c'è un modo per vedere le righe da 1 a 75?

Ogni comando che è stato salvato nella tua cronologia è disponibile in ~/.bash_history file, per vederli tutti apri un terminale ed esegui:

cat ~/.bash_history

Per ottenere un output simile a history comando con esecuzione numerazione:

cat -n ~/.bash_history

I numeri di riga iniziano con 76 per qualche motivo?

Esegui questo comando:

grep "^HIST" .bashrc

Devi ottenere un output simile a:

HISTSIZE=1000
HISTFILESIZE=2000

Come ho detto prima ~/.bash_history mantiene la cronologia della riga di comando.

  • Il HISTFILESIZE mostra quanti comandi dovrebbero ~/.bash_history tiene traccia, per me sono 2000.

  • E HISTSIZE è il numero di comandi che history il comando (in realtà integrato nella shell) tiene traccia di.

Quando apri un terminale ed esegui history , sceglierà l'ultimo HISTSIZE numero di comandi da ~/.bash_history e te lo mostra.

Se esegui nuovi comandi, rimuoverà quelli più vecchi dalla sessione e aggiungerà i nuovi alla fine del suo elenco in modo che il numero di comandi corrisponda a HISTSIZE .

Immagino che mentre ponevi la domanda avevi 74 comandi in più rispetto a HISTSIZE nel tuo .bash_history ed è per questo che parte da 75.

Correlati:come installare e gestire i giri in Ubuntu?

Da man bash :

  • HISTSIZE

    Il numero di comandi da ricordare nella cronologia dei comandi.

  • HISTFILESIZE

    Il numero massimo di righe contenute nel file della cronologia.


Ubuntu
  1. Come usare il comando cronologia in Linux

  2. Suggerimenti Bash per tutti i giorni dalla riga di comando

  3. Comando della cronologia che mostra la directory e la data?

  4. Stampa un file, saltando le prime X righe, in Bash

  5. Come cambiare rapidamente la prima parola in un comando Bash?

Come utilizzare il comando vmstat

Il comando pwd Linux

Come utilizzare il comando cronologia di Linux

Come utilizzare il comando cronologia su CentOS 8

Il comando di spegnimento?

Il comando Cat non mostra le righe del testo?