====== Exécuter une commande qui a été précédemment utilisée ====== {{tag>"Linux systeme"}} {{ :dummy.png?75x75|Mots-clé du shell}} Le point d'exclamation ! en début de commande sous Linux est utilisé pour exécuter une commande qui a été précédemment utilisée. Cela permet de rappeler la dernière commande saisie, pour que vous puissiez la ré-exécuter rapidement. **Sous Fedora** et certaines autres distributions Linux, la ligne est d'abord affichée dans le shell et il faut valider cette commande en appuyant sur Entrée pour l'exécuter. Rapidement, les commandes à retenir : * ''!!'', rappelle la dernière commande * ''!$'', utilise le dernier arguments de la dernière commande * ''!*'', utilise tous les arguments de la dernière commande * ''!motif'', exécute la dernière commande qui commence par "motif" * ''!?motif?'', rappelle la dernière commande contenant le "motif" * ''!-2'', rappelle la commande n lignes plus tôt --- !! est un __**opérateur de rappel de commande**__ qui permet de rappeler et d'exécuter la dernière commande saisie. Il est similaire à utiliser seulement ! mais il est plus rapide et plus facile à saisir. Exemple : ls /root sudo !! Cela va ré-exécuter la dernière commande avec ''sudo'' pour obtenir les permissions nécessaires pour exécuter la commande dans le répertoire ''/root''. Il peut être utilisé pour __**exécuter une commande qui a été saisie antérieurement en utilisant le numéro d'historique**__ de la commande. Par exemple, pour exécuter la commande numéro 10 dans l'historique, vous pourriez utiliser la commande "!10". {{ :journal_geek:billets:pasted:20230128-005733.png }} {{ :journal_geek:billets:pasted:20230128-005753.png }} __**Utiliser le dernier argument**__ de la dernière commande saisie !$ Par exemple pour changer le répertoire courant pour ''/usr/local/bin'' : ls /usr/local/bin puis cd !$ {{ :journal_geek:billets:pasted:20230128-005249.png }} __**Utiliser tous les arguments**__ de la dernière commande saisie !* __**Exécuter la dernière commande qui commence par**__ "motif" !motif Par exemple pour ré-exécuter la dernière commande commençant par ''ls'' soit ''ls /usr/local/bin'' : !ls {{ :journal_geek:billets:pasted:20230128-005601.png }} __** Rappel de la commande n lignes plus tôt **__ dans l'historique. Par exemple, pour rappel la commande qui a été saisie 2 lignes plus tôt. !-2 __** Rappel de la dernière commande qui contient "motif"**__ Permet de rappeler la dernière commande dans l'historique contant le "motif" : !?motif? --- //[[user:cedricabonnel]], [[user:CPT]] - Édition initiale du Samedi 4 Février 2023 //