Stephan Hakuli <[EMAIL PROTECTED]> wrote: > in der Vergangenheit ist auf meinem Woody-System die Liste der > Backport-Sourcen ziemlich angewachsen. Ich m�chte nun herausfinden, > welche Pakete aus welchen Quellen installiert worden sind, in der > Hoffnung, dass ich ein paar dieser Quellen f�r �berfl�ssig erkl�ren > kann. Gibt es ein tool aus der apt-Familie, das genau diese Anforderung > erf�llt? Andernfalls w�rde ich den Inhalt von /var/lib/apt/lists/ mit > einem Skript durchforsten und mit einem geeignet formatierten output > von "dpkg -l" abgleichen, aber das w�rde vermutlich ein l�ngliches und > nicht besonders h�bsches Skript...
Und so ein l�ngliches und nicht besonders h�bsches Skript hab ich jetzt auch endlich fertig. Verbesserungsvorschl�ge willkommen :-) HTH Thorsten http://www.tgunkel.de/software/files/where_is_debian_package_from #!/bin/sh # get installed packages dpkg --get-selections | grep [^A-Za-z0-9]install$ | awk '{ print $1 }' | while read package_line do # extract possible sources echo -n "$package_line |" source_found=0 apt-cache policy "$package_line" | while IFS= read source_line do # find the marked source case $source_found in 0) echo "$source_line" | grep ^" \*\*\*" >/dev/null && source_found=1 ;; 1) echo "$source_line" | grep \ \ *[-\ ][0-9][0-9]*\ >/dev/null || source_found=2 if [ $source_found -eq 1 ]; then source_line="`echo $source_line | sed s/^\ *[0-9]*\ //`" echo -n " $source_line |" fi ;; *) ;; esac done echo done | sort +1 | while read finish_line do # sort output by sources package="`echo $finish_line | sed s/\ .*$//`" debsource=`echo $finish_line | sed s/^[^\ ]*\ //` if [ "X$debsource" != "X$debsource_old" ]; then echo "*** $debsource" fi debsource_old=$debsource echo "$package" done -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)

