Как я перечисляю установленные пакеты с источником URI, распределение и раздел в Debian?

Это не может быть сделано легко. A [count] прежде <C-w>f указывает который соответствие файла на 'path' открыт, это не выбирает существующее окно. Только для <C-w>w команда, [count] означает, "переходят к существующему числу окна".

Для получения той функциональности необходимо записать пользовательское отображение который также

  • захватывает файл, переходит в [count] окно и эмулирует gf команда, или
  • клонирует текущий буфер к [count] окно, и выполняется gf там
5
30.04.2019, 03:46
4 ответа

Я обнаружил, что собираю отрывки из разных ответов, в частности Braiam's и muru's. В конце концов, я закончил с этим oneliner, который приблизил меня достаточно близко к началу, чтобы я мог понять остальное:

dpkg-query --showformat '${Package}\n' -W | \
while read package; do \
  apt-cache policy $package | grep -q wheezy/non-free && echo $package ; \
done

Выше перечислены имена всех пакетов, которые apt-cache policy сообщает как исходящие от wheezy/non-free (не совсем, но достаточно близко на данный момент). Настраивая то, что скрипт делает с apt-cache политики выход, в то время как он не будет в хорошем табличном формате (по крайней мере, из коробки), это должно быть возможно, чтобы получить достаточно близко к тому, что я после.

Спасибо всем, кто помог!

2
27.01.2020, 20:33

-L является одним из вариантов DPKG-запроса , который имеет другой вариант, -W (или - показать ). -W позволяет использовать формат вывода. Вы можете попробовать:

dpkg-query --showformat '${Status}\t${Package}\t${Version}\t${Architecture}\t${Origin}\t${Section}\n' -W | 
  column -ts $'\t'

Например:

$ dpkg-query --showformat '${db:Status-Abbrev}\t${Package}\t${Version}\t${Architecture}\t${Origin}\t${Section}\n' -W | column -ts $'\t' | head
ii  account-plugin-aim           3.8.6-0ubuntu9.1                amd64  gnome
ii  account-plugin-facebook      0.11+14.04.20140409.1-0ubuntu1  all    gnome
ii  account-plugin-flickr        0.11+14.04.20140409.1-0ubuntu1  all    gnome
ii  account-plugin-google        0.11+14.04.20140409.1-0ubuntu1  all    gnome
ii  account-plugin-jabber        3.8.6-0ubuntu9.1                amd64  gnome
ii  account-plugin-salut         3.8.6-0ubuntu9.1                amd64  gnome
ii  account-plugin-twitter       0.11+14.04.20140409.1-0ubuntu1  all    gnome
ii  account-plugin-windows-live  0.11+14.04.20140409.1-0ubuntu1  all    gnome
ii  account-plugin-yahoo         3.8.6-0ubuntu9.1                amd64  gnome
ii  accountsservice              0.6.35-0ubuntu7.1               amd64  admin

URI не известен DPKG , поскольку это беспристрастный ( apt ). Не должно быть так сложно использовать awk или что-то, чтобы получить его тоже.

3
27.01.2020, 20:33

Вы ищете политику apt-cache вывод:

➜  ~  apt-cache policy skype
skype:i386:
  Installed: 4.3.0.37-1
  Candidate: 4.3.0.37-1
  Version table:
 *** 4.3.0.37-1 0
        100 /var/lib/dpkg/status
➜  ~  apt-cache policy irssi
irssi:
  Installed: 0.8.17-1
  Candidate: 0.8.17-1
  Version table:
 *** 0.8.17-1 0
        900 http://http.debian.net/debian/ testing/main amd64 Packages
        500 http://http.debian.net/debian/ unstable/main amd64 Packages
        100 /var/lib/dpkg/status
➜  ~  apt-cache policy megasync
megasync:
  Installed: 1.0.39
  Candidate: 1.0.39
  Version table:
 *** 1.0.39 0
        500 http://mega.nz/linux/MEGAsync/Debian_7.0/ ./ Packages
        100 /var/lib/dpkg/status

В этом случае установленная версия skype недоступна ни из какого репозитория (который включает локальную установку), irssi устанавливается из репозиториев Debian, а megasync - из репозитория стороннего производителя.

3
27.01.2020, 20:33

, а также политика apt-cache , описанная в ответе Braiam, вы можете использовать apt-шоу-версии и apt-forktracer.

apt-show-versions по умолчанию перечисляет все установленные пакеты с набором, из которого они вышли, их версией и можно ли их обновить; например,

afl:amd64/experimental *manually* upgradeable from 1.28b-1 to 1.36b-1
agedu:amd64/testing 9723-1 uptodate
devio:armhf 1.2-1 installed: No available version in archive

с помощью опции -a перечисляет установленную версию и все доступные версии во всех репозиториях, которые вы настроили:

afl:amd64 1.28b-1 install ok installed
No stable version
No testing version
No unstable version
afl:amd64 1.36b-1 experimental ftp.fr.debian.org
afl:amd64/experimental *manually* upgradeable from 1.28b-1 to 1.36b-1
agedu:amd64 9723-1 install ok installed
No stable version
agedu:amd64 9723-1 testing  ftp.fr.debian.org
agedu:amd64 9723-1 unstable ftp.fr.debian.org
No experimental version
agedu:amd64/testing 9723-1 uptodate

apt-forktracer перечисляет пакеты, которые не поставляются из стандартных репозиториев, или чья установленная версия не соответствует версии, доступной в стандартных репозиториях:

afl (1.28b-1) [Debian: 1.36b-1]
bb (1.3rc1-8.2) [Debian: 1.3rc1-8.1+b1 1.3rc1-8.1+b1]
biew (5.7.3.1-0.1) [SK2: 5.7.3.1-0.1]
4
27.01.2020, 20:33

Теги

Похожие вопросы