Si vous ne dormez pas la nuit, que signifie ^suod^sudo^ ou encore !-3:3 voir même !564:s@h@s -lh@

Ce sont toutes des manipulation « à la volée » de l’historique accessible avec n’importe quel shell POSIX. Pratique dans un shell limité tel que sh où celui fourni par busybox où la flèche du haut ne rappelle pas la dernière commande. Vous ferez alors !! C’est un raccourci pour !-1 à moins que cela soit juste le dernier élément de la ligne de commande précédente : !$ .eq. !-1:$

Parmi toutes ces substitutions, certaines sont plus utiles que d’autres. On peut noter en particulier :

  • ^motif^remplacement^
  • !:s/motif/remplacement/
  • !! : dernière commande
  • !54 : commande 54
  • !-3 : antépénultième commande
  • !-2:2 : 3ème argument de l’avant-dernière commande
  • !# ou !!:0 : premier argument de la dernière commande (nom du programme)
  • !$ ou !!:-1 : dernier argument de la dernière commande
  • !? : liste des arguments de 1 à -1 (tous sauf le nom du programme)