Rieseguire l'ultimo comando durante la sostituzione di sintassi o errori di battitura

Se hai mai inserito un comando lungo nel terminale e dopo aver scoperto un errore di sintassi, un messaggio "nessun file o directory" o "comando non trovato" perché hai fatto un errore di battitura, ti piacerà questo suggerimento rapido che consente di rieseguire l'ultimo comando eseguito sostituendo la sintassi errata. Avrai bisogno di usare la shell bash predefinita affinché funzioni.

La sintassi generale da utilizzare è la seguente:

!!:gs/old/new

!! esegue nuovamente l'ultimo comando, mentre: gs / old / new sostituisce le istanze del testo "vecchio" con "nuovo" nell'ultimo comando.

Ad esempio, ecco un semplice comando di directory change con un errore nel percorso:

cd /System/Library/CoerServices/Dock.app/Contents/

Avviso "CoerServices" dovrebbe essere "CoreServices", ma piuttosto che digitare di nuovo l'intero comando e percorso, è possibile inserire quanto segue:

!!:gs/Coer/Core/

E all'improvviso sei nella giusta directory.

Questo è ovviamente estremamente utile quando hai scoperto errori fluttuanti nella sintassi della riga di comando da qualche parte, ma è anche perfetto per attivare e disattivare le impostazioni tramite comandi di default, sostituendo "no" con "sì" e così via:

!!:gs/no/yes

Puoi anche mettere sudo di fronte !! per eseguire il comando precedente come root.