Réexécutez la dernière commande en remplaçant la syntaxe ou les fautes de frappe

Si vous avez déjà entré une longue commande dans le terminal et que vous avez découvert une erreur de syntaxe, un message "no such file or directory" ou "command not found" parce que vous avez fait une faute de frappe, vous aimerez cette astuce rapide vous permet de réexécuter la dernière commande exécutée tout en remplaçant la syntaxe erronée. Vous devrez utiliser le shell bash par défaut pour que cela fonctionne.

La syntaxe générale à utiliser est la suivante:

!!:gs/old/new

!! exécute à nouveau la dernière commande, alors que: gs / old / new remplace les occurrences du texte "old" par "new" dans la dernière commande.

Par exemple, voici une simple commande de changement de répertoire avec une erreur dans le chemin:

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

Remarque "CoerServices" doit être "CoreServices", mais plutôt que de taper à nouveau la commande entière et le chemin, vous pouvez entrer ce qui suit:

!!:gs/Coer/Core/

Et soudainement vous êtes dans le bon répertoire.

Ceci est évidemment extrêmement utile lorsque vous avez découvert des erreurs flottant quelque part dans la syntaxe de la ligne de commande, mais il est également parfait pour basculer les paramètres entre et par des choses comme les commandes par défaut en remplaçant "non" par "oui" et ainsi de suite

!!:gs/no/yes

Vous pouvez également placer sudo devant !! pour exécuter la commande précédente en tant que root.