Aggreghiamo le notizie italiane sull'Open Source
Continuo qui un argomento trattato un po di tempo fa, cioè l’uso della history in BASH

Per prima cosa rivediamo la nostra history:
history|tail -4
510 ping 192.168.0.1
511 ifconfig eth1
512 ls -l gnome3-0.1.tar.gz
513 ls apache2.conf
come avevamo visto precedentemente per far riferimento all’ultimo argomento passato al comando precedente potevamo usare il !$, ad esempio:
more !$
una volta premuto invio, questa istruzione sarà “traformata” in
more apache2.conf
Non esiste solo questa di opzione, se ne possono usare anche di altre:
facciamo un esempio, supponiamo di aver scritto:
echo Questa prova serve per vedere come funziona la history
echo !$
e otteniamo “history”
echo Questa prova serve per vedere come funziona la history
echo !:0
e otteniamo “echo”
echo Questa prova serve per vedere come funziona la history
echo !:3
e otteniamo “serve”
echo Questa prova serve per vedere come funziona la history
echo !^
e otteniamo “Questa”
echo Questa prova serve per vedere come funziona la history
echo !:2-4
e otteniamo “prova serve per”
Ora, vediamo altre opzioni interessanti…
ma facciamo degli esempi
echo /etc/X11/xorg.conf
echo !$:h
ed otteniamo “/etc/X11″
echo /etc/X11/xorg.conf
echo !$:r
ed otteniamo “/etc/X11/xorg”
echo /etc/X11/xorg.conf
echo !$:e
ed otteniamo “.conf”
echo /etc/X11/xorg.conf
echo !$:t
ed otteniamo “xorg.conf”
Ora un ultima opzione, per me utilissima…. p
echo /etc/X11/xorg.conf
ls !$:t:p
stampa il comando “trasformato” ma non lo esegue realmente, questo può essere certamente utile per essere sicuri di non fare danni! ![]()
Per eseguirlo realmente o si scrive !! e si preme invio, o si preme la freccetta in su della tastiera e si preme invio.
Le opzioni possono ovviamente essere usate combinandole, ad esempio:
echo /etc/X11/xorg.conf
echo !:1:t:r
