перечислите все ppa репозитории, добавленные к моей системе

Как я могу перечислить все ppa репозитории, добавленные к моей системе, и сохранить ее к a .txt файл, так, чтобы я не хотел проводить свое время в поиске ppa's для новых установок и я могу просто выбрать ppa строку в моем .txt файл и добавляет к команде sudo add-apt-repository? Также есть ли какие-либо другие способы сделать это, в котором я не хочу давать gpg ключи вручную?

21
задан 6 December 2014 в 06:14

3 ответа

От , Как я могу получить список всех репозиториев и PPAs из командной строки в сценарий установки?

Часть ответа надеется иметь то, что Вы ищете:

#! /bin/sh 
# listppa Script to get all the PPA installed on a system ready to share for reininstall
for APT in `find /etc/apt/ -name \*.list`; do
    grep -o "^deb http://ppa.launchpad.net/[a-z0-9\-]\+/[a-z0-9\-]\+" $APT | while read ENTRY ; do
        USER=`echo $ENTRY | cut -d/ -f4`
        PPA=`echo $ENTRY | cut -d/ -f5`
        echo sudo apt-add-repository ppa:$USER/$PPA
    done
done

Сохраняют это как listppa.sh

listppa.sh > installppa.sh

, Это создает сценарий, который можно скопировать где-нибудь, затем выполнить для добавления PPAs на новой установке путем простого выполнения:

installppa.sh
19
ответ дан 23 November 2019 в 01:41

Для тех, кто просто хочет проверить PPAs, без которого они установили на самом деле выполнение что-либо с ними автоматически, что можно сделать:

$ apt-cache policy

В моей системе, вот немного, что она показывает:

% apt-cache policy
Package files:
 100 /var/lib/dpkg/status
     release a=now
 500 http: ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/ precise/main Translation-en
 500 http: ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/ precise/main i386 Packages
     release v=12.04,o=LP-PPA-ubuntu-toolchain-r-test,a=precise,n=precise,l=Toolchain test builds,c=main
     origin ppa.launchpad.net
 500 http: ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/ precise/main amd64 Packages
     release v=12.04,o=LP-PPA-ubuntu-toolchain-r-test,a=precise,n=precise,l=Toolchain test builds,c=main
     origin ppa.launchpad.net
 500 http: ppa.launchpad.net/rael-gc/scudcloud/ubuntu/ precise/main Translation-en
 500 http: ppa.launchpad.net/rael-gc/scudcloud/ubuntu/ precise/main i386 Packages
     release v=12.04,o=LP-PPA-rael-gc-scudcloud,a=precise,n=precise,l=ScudCloud - Linux client for Slack,c=main
     origin ppa.launchpad.net
...

Заключенный в кавычки от здесь :

[apt-cache policy] получает приоритеты, связанные с каждым ресурсом репозитория. От его вывода можно вывести список всех доступных репозиториев и PPAs.

Источник: http://ask.xmodulo.com/list-installed-repositories-ppas-ubuntu.html

20
ответ дан 23 November 2019 в 01:41

Из моего ответа на том, Как я могу получить список всех репозиториев и PPAs из командной строки в сценарий установки?

Перечислите PPAs в ppa:USER/REPO формат:

grep -E '^deb\s' /etc/apt/sources.list /etc/apt/sources.list.d/*.list |\
  cut -f2- -d: |\
  cut -f2 -d' ' |\
  sed -re 's#http://ppa\.launchpad\.net/([^/]+)/([^/]+)(.*?)$#ppa:\1/\2#g' |\
  grep '^ppa:'

Перечислите все репозитории включая PPAs в ppa:USER/REPO формат:

Просто удалите последнее grep (не забывайте удалять |\ от предыдущей строки послеsed команда).

См. мой ответ по другому вопросу для полных сценариев, которые можно сохранить и использовать, включая генерацию сценария установки.

0
ответ дан 23 November 2019 в 01:41

Другие вопросы по тегам:

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