Есть ли способ использовать шаблоны с aptitude
такими, как в следующем:
sudo apt-get remove openoffice*.*
Есть ли способ использовать шаблоны с aptitude
такими, как в следующем:
sudo apt-get remove openoffice*.*
Ответы:
http://ubuntuforums.org/showthread.php?t=228309 указывает, что это возможно с помощью таких конструкций, как, ~n<package name>
и это подтверждается руководством пользователя http://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/ ch02s03s02.html .
~n
in ~n<package name>
- это шаблон поиска подходящих имен пакетов. Также возможно сопоставить другие поля, кроме имен пакетов, см. Http://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/ch02s03s05.html#tableSearchTermQuickGuide .
Вот пример. Скажем, что вы хотите aptitude
показать каждый пакет с «красным смещением» в своем имени, тогда вы выпускаете
aptitude show ~nredshift
Он должен сочетаться с другими опциями aptitude, такими как установка и удаление, например, для удаления всех установленных пакетов с openoffice в названии, которое вы выдаете.
sudo aptitude -P remove ~nopenoffice
Обязательно используйте эту -P
опцию при использовании шаблонов поиска, чтобы заставить aptitude отображать подсказку перед загрузкой, установкой или удалением пакетов (шаблон поиска может иметь много совпадений, и вам потребуется запрос перед выполнением действия).
Одна вещь, которую я не разработал, это как получить точную функциональность подстановочных знаков, например, которая openoffice*
соответствует каждой строке, начинающейся с «openoffice» ( ~nopenoffice
соответствует любой строке, содержащей «openoffice»). Возможно, возможен обходной путь, например, для поиска установленных пакетов с определенной строкой в их именах, а затем добавьте в aptitude свои имена.
Вы просто помещаете это в кавычки:
sudo apt-get remove "openoffice*"
В противном случае оболочка попытается сопоставить это с файлами вашего текущего рабочего каталога.
aptitude
и нет apt-get
. Это решение не работает с aptitude.