!!
n'a rien à voir avec apt-get
. C'est un mot-clé Shell qui sera étendu à la commande précédente. Cette expansion est faite par Shell avant que la commande courante soit interprétée.
De man bash
:
! ! Se référer à la commande précédente. C'est un synonyme pour `!-1'.
Par exemple, si vous exécutez une commande :
echo "foo"
Alors si tu cours :
sudo apt-get install !!
il sera étendu à :
sudo apt-get install echo foo
Comme vous pouvez le voir, il est développé en deux paquets, à savoir echo
et l'autre est foo
. Il n'existe pas de paquet autonome nommé foo
と echo
. En dehors du Shell intégré. echo
il y a /bin/echo
qui fait partie du paquetage GNU-coreutils. Ainsi, vous obtiendrez des erreurs disant que de tels paquets ne sont pas disponibles.
D'un autre côté, l'autre personne pourrait faire quelque chose comme ça :
$ cowsay
The program 'cowsay' is currently not installed. You can install it by typing:
sudo apt-get install cowsay
$ sudo apt-get install !!
sudo apt-get install cowsay
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
filters
The following NEW packages will be installed:
cowsay
0 upgraded, 1 newly installed, 0 to remove and 119 not upgraded.
Need to get 18.5 kB of archives.
Comme vous pouvez le constater cowsay
est en cours d'installation.
Je vous conseille de ne pas le faire (sauf si vous êtes sûr), être explicite ne fait pas de mal.