!!
не имеет ничего общего с apt-get
. Это ключевое слово оболочки, которое будет расширено до предыдущей команды. Это расширение выполняется оболочкой до интерпретации текущей команды.
От man bash
:
!! Обратитесь к предыдущей команде. Это синоним `! -1 '.
Например, если вы запускаете команду:
echo "foo"
Тогда, если вы запустите:
sudo apt-get install !!
он будет расширен до:
sudo apt-get install echo foo
Как видите, он разбит на два пакета, а именно - echo
на другой foo
. Не существует отдельного пакета с именем foo
и echo
. Помимо встроенной оболочки echo
есть /bin/echo
исполняемый файл, который является частью пакета GNU-coreutils. Таким образом, вы получите ошибки о том, что таких пакетов нет.
С другой стороны, другой человек может делать что-то вроде этого:
$ 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.
Как вы видите cowsay
, устанавливается.
Я бы посоветовал вам не делать этого (если вы не уверены), если вы будете откровенны, это не повредит.