ChimeraRevo – Il punto di riferimento della tecnologia
menubar
Home > Guide > Cancellare la cronologia dei…

Cancellare la cronologia dei comandi da terminale

Gaetano Abatemarco Giu 27, 2016

Per impostazione predefinita, qualsiasi cosa digitiate a terminale seguita da Invio viene memorizzata in un particolare file, che il sistema chiama HISTFILE, che rappresenta di fatto la cronologia dei comandi impartiti.

Tale cronologia può essere visualizzata in qualsiasi momento digitando il comando

history

Esiste un HISTFILE per ogni utente (root compreso) ed in genere questo risiede nella home directory; e se, per un motivo o per un altro, volessimo far sì che alcuni comandi da noi impartiti non comparissero nella cronologia, cosa utile ad esempio per tutelare la propria privacy nel caso di accesso comune ad un server condiviso?

Ebbene, sappiate che si può fare: è possibile cancellare la cronologia dei comandi da terminale usando strumenti offerti dal sistema stesso, senza installare software esterno né apportare modifiche definitive.

I metodi per cancellare la cronologia dei comandi da terminale in Linux – ovviamente quelli relativi al proprio utente – sono molteplici e permettono sia di eliminare selettivamente determinati comandi di una singola sessione, sia di eliminare tutti i comandi di una singola sessione sia di cancellare completamente la cronologia.

Vediamo insieme come fare.

Preambolo: lo spazio

Prima di procedere con la nostra guida, vediamo un trucchetto molto rapido che funziona per la maggior parte delle distribuzioni: per impostazione predefinita, impartire un comando preceduto con lo spazio farà si che questo non venga affatto inserito nella cronologia.

Ad esempio, impartendo il comando

   ls -al

con uno spazio precedente, farà si che questo non venga visualizzato quando si invoca la cronologia con history.

history-spazio

Come vi dicevamo poc’anzi, di norma questo è il comportamento predefinito delle più note distribuzioni; se per voi non fosse così, potrete tranquillamente far sì che per la sessione corrente il terminale ignori i comandi a cui viene anteposto uno spazio impostando la relativa variabile d’ambiente, con il comando

export HISTCONTROL = ignorespace

Cancellare la cronologia dei comandi da terminale – Eliminazione selettiva

Con questo metodo è possibile eliminare selettivamente soltanto determinati comandi dalla cronologia (dal file history) dopo averli impartiti. Innanzitutto andiamo a visualizzare la cronologia con il comando

history

e identifichiamo il numero in corrispondenza del comando da eliminare. A questo punto procedere è semplice: basterà digitare (sempre meglio preceduto da spazio, così che non venga a sua volta memorizzato)

 history -d numerocomando

history-d

Cancellare la cronologia dei comandi da terminale – Singola sessione

Con questo metodo è possibile far si che per l’intera sessione i comandi non vengano inseriti nella cronologia. Per farlo, è sufficiente – prima di iniziare con i ciò che non si intende memorizzare – impartire al terminale il comando

 set +o history

(meglio se preceduto da uno spazio). Quando avrete finito e vorrete ripristinare la memorizzazione della cronologia, non vi resterà che digitare

set -o history

Cancellare la cronologia dei comandi da terminale

Cancellare l’intera cronologia dei comandi

Con questo metodo cancellerete tutta la cronologia dei comandi da terminale impartiti utilizzando il vostro nome utente, ed il processo è irreversibile. Per farlo, dopo aver terminato il vostro lavoro, è sufficiente digitare il comando

cat /dev/null > ~/.bash_history && history -c && exit

BONUS: Cancellare la cronologia della sessione corrente uccidendo il relativo processo

Questo è un trucchetto molto poco elegante e molto poco pulito, ma in realtà il più veloce se si intende fare qualcosa da terminale senza il rischio di lasciare le proprie tracce (ovviamente verrà però memorizzato l’accesso eseguito tra i log di sistema).

L’efficacia di questo semplicissimo quanto rapido metodo sta nel fatto che i comandi impartiti nella sessione corrente vengono scritti nel file della cronologia (che, per la maggiore, è ~/.bash_history) soltanto dopo aver chiuso il terminale o aver effettuato il logout dalla sessione.

Quindi, se per qualche motivo il terminale/la sessione vengono non “chiusi” ma “uccisi” (ovvero chiusi in maniera “brutale”), i comandi impartiti – ovvero la copia in memoria di .bash_history – non vengono scritti. Morale della favola: per non memorizzare la cronologia della sessione corrente è sufficiente mandare un SIGKILL (ovvero uccidere) il processo della shell corrente.

E, per farlo, è sufficiente digitare – dopo aver terminato il lavoro – il comando

kill -9 $$

Se posso darvi un consiglio, conservate questa opzione soltanto per i casi di emergenza!

TecnOutlet2020: iPhone e prodotti Apple a prezzi stracciati (opinioni e recensione)

9 ore fa

Una nuova realtà è appena nata sul web e si chiama TecnOutlet2020: la mission è vendere iPhone nuovi o ricondizionati a prezzi stracciati. E sembrano promettere bene. Nel video qui in alto vi abbiamo spiegato leggi di più…

Tecnoutlet2020

Come trovare i file scaricati su iPhone o iPad

13 ore fa

Come sicuramente saprete, il file manager di iPhone e iPad funziona in maniera profondamente diversa rispetto ai dispositivi dotati di Android, macOS o Windows. Per questo motivo potreste sicuramente trovare delle difficoltà a trovare i leggi di più…

migliori emulatori iPhone

Come recuperare storie, foto e video cancellati su Instagram

2 giorni fa

Instagram è ormai diventato per tutti un vero e proprio contenitore dei ricordi più “impulsivi”. Si possono pubblicare sotto forma di storie, foto o anche video, ma tutti restano allo stesso modo importanti. Per questo leggi di più…

Come ingrandire foto profilo Instagram 4

Migliori Smartphone 250 euro 2021: quale comprare

2 giorni fa

La fascia dei migliori smartphone a 250 euro è probabilmente tra le più affollate e interessanti sul mercato, con tante proposte interessanti di smartphone appena usciti, ma anche di telefoni usciti qualche tempo fa che leggi di più…

smartphone 250 euro

I migliori siti dove leggere o scaricare Manga

2 giorni fa

I manga, ovvero i famosi fumetti giapponesi, sono una passione che viene coltivata da grandi e piccini. Questi fumetti sono considerati delle vere e proprie opere d’arte, capaci di trasmettere ai lettori grandi emozioni. Essi leggi di più…

leggere manga online

Iscriviti alla Newsletter

Articoli recenti

  • TecnOutlet2020: iPhone e prodotti Apple a prezzi stracciati (opinioni e recensione)
  • Come trovare i file scaricati su iPhone o iPad
  • Come recuperare storie, foto e video cancellati su Instagram
  • Migliori Smartphone 250 euro 2021: quale comprare
  • I migliori siti dove leggere o scaricare Manga
  • Chi siamo
  • Lavora con noi
  • Contattaci
  • Privacy

Copyright © 2020. Tutti i diritti riservati. ChimeraRevo SRL - P.I.: IT05544220659

Modifica impostazioni sulla privacy