По суті, я шукаю еквівалент Debian:
yum list available
показати мені, які пакунки доступні (хоча зараз не встановлені). Я вважаю за краще щось, що можна запустити з консолі, оскільки це на віддаленому сервері. Спасибі.
По суті, я шукаю еквівалент Debian:
yum list available
показати мені, які пакунки доступні (хоча зараз не встановлені). Я вважаю за краще щось, що можна запустити з консолі, оскільки це на віддаленому сервері. Спасибі.
Відповіді:
grep-dctrl
і його похідні забезпечують чудовий спосіб запиту файлів підходящого кешу. (Ви можете встановити ці інструменти на ubuntu за допомогою sudo apt-get install dctrl-tools)
У випадку наявних (але не обов'язково встановлених) пакетів, ви можете використовувати grep-available
. Наприклад, перелічити всі доступні пакети:
grep-available -s Package .
Редагувати:
aptitude
може показати вам список не встановлених пакетів, просто запустивши його.
Ви також можете отримати список не встановлених пакетів aptitude
за допомогою:
aptitude -F "%p" search "?not(?installed)"
Зауважте, що з новими пакетами з декількома арками ви отримаєте пакунки для інших архітектур, перелічених у цьому результаті. Наприклад, я отримую:
aptitude -F "%p" search "?not(?installed)" | grep "^bash:"
bash:i386
У мене bash
встановлений пакет, але це версія amd64, оскільки моя ОС встановлена з версією amd64 Ubuntu Precision. Якщо ви не хочете бачити ці пакети для інших архітектур, ви можете виключити рядки, що містять :
:
aptitude -F "%p" search "?not(?installed)" | grep -v ':'
apt-cache
використовується для запиту кеш пакетів:
apt-cache pkgnames | сортувати
APT-кеша пошуку річ
APT-кеша пошуку --names тільки річ
code
"dpkg --get-select | grep '[[: space:]] install $' | awk '{print $ 1}' > встановлено.txt "і знайдено дублікати. Інші дві вказані вами команди не працюватимуть, оскільки я не шукаю конкретний пакет, а будь-який пакет, який наразі не встановлений.
Використовуйте apt-cache
для цього:
apt-cache search package
Оскільки в системі apt-cache
використовується лише кеш пакетів, переконайтеся, що цей кеш оновлений:
apt-get update
Ви також можете скористатися утилітою, apt-file
якщо вам відомо ім’я файлу, який ви хочете шукати; це, однак, слід додати до системи. Наприклад:
apt-file search somefilename
Я схильний використовувати apt-cache
один із наступних способів:
apt-cache search package | sort | grep item
(Це показує вам речі , які мають елемент на самому справі в їх резюме або імен.)
apt-cache search thing | sort | less
(Цей предмет шукає , а потім сортує його для приємного перегляду less
.)
Моя точка зору - працювати з командами, встановленими за замовчуванням, і уникати зайвих пакетів, якщо немає якоїсь конкретної причини.
У моєму Debian з GNU розбийте ці прості команди
apt list
apt list --all-versions
дає список будь-якого (встановленого та не встановленого). Тоді я можу обмежити результати grep "встановлено" або grep -v "встановлено". Він також може поєднуватися з одним або декількома назвами пакунків (приймаються дикі знаки).
Перемикач "-всі-версії" забезпечує виведення окремих рядків для кожної версії пакета (стабільний, тестуючий, нестабільний, експериментальний).
Простий "підходящий список" дає лише одну (найвищий пріоритет) версію.
Суворо поставивши запитання (ви хочете показати список не встановлених пакетів), спробуйте використовувати
(відредаговано відповідно до коментарів нижче)
# apt-get update
# dpkg -l '*' | egrep --invert-match '^i'
Хоча не впевнений у точному синтаксисі, оскільки я це пишу на вікні вікна і не можу перевірити. Можливо, спробуйте змінити те, на що ви жартуєте
'^ii'
замість '[ii]'
), вам не вистачає на пакети, які встановлені , але не сконфігуровані, наприклад , (наприклад , iF
чи iH
, наприклад).