Kleines script zur Erstellung einer preferences Datei: Unterschied zwischen den Versionen
K (Kategorie angepasst da nun die Kategorie Paketmanager mit Unterkategorien existiert) |
K |
||
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | Mit diesem Script kann man sich eine preferences erstellen um viele Pakete mit gleichem Präfix (kde, xorg, ..) zu pinnen. | + | Mit diesem Script kann man sich eine preferences erstellen, um viele Pakete mit gleichem Präfix (kde, xorg, ..) zu pinnen. |
Aufruf: | Aufruf: | ||
Zeile 9: | Zeile 9: | ||
./myScript myXORG xorg | ./myScript myXORG xorg | ||
− | Falls man den 2.Parameter weg lässt erhält man eine preference Datei für alle seine aktuell installierten Pakete. | + | Falls man den 2.Parameter weg lässt, erhält man eine preference Datei für alle seine aktuell installierten Pakete. |
− | Die | + | Die Ergebnisdatei steht im aktuellen Verzeichnis und kann dann (nach Prüfung!) in die vorhandene /etc/apt/preferences eingefügt werden. Das darf in der Regel nur root ! |
− | Da es sich um ein "quick hack" Script handelt, gibt es keinerlei Fehlerprüfung der Parameter | + | Da es sich um ein "quick hack" Script handelt, gibt es keinerlei Fehlerprüfung der Parameter. |
Hier die source, speichern z.Bsp als myScript und mit chmod +x myScript ausführbar machen. | Hier die source, speichern z.Bsp als myScript und mit chmod +x myScript ausführbar machen. | ||
Zeile 58: | Zeile 58: | ||
---- | ---- | ||
[[Shellscripte|Zurück zur Shellscripte Übersicht]]<br /> | [[Shellscripte|Zurück zur Shellscripte Übersicht]]<br /> | ||
− | [[ | + | [[Paketmanager|Zurück zum Paketmanager]]<br/> |
[[Category:APT]] | [[Category:APT]] | ||
[[Category:Shellscripte]] | [[Category:Shellscripte]] |
Aktuelle Version vom 2. April 2007, 09:20 Uhr
Mit diesem Script kann man sich eine preferences erstellen, um viele Pakete mit gleichem Präfix (kde, xorg, ..) zu pinnen.
Aufruf:
myScript <name-der-preferences> <filter-string>
Beispiel:
./myScript myXORG xorg
Falls man den 2.Parameter weg lässt, erhält man eine preference Datei für alle seine aktuell installierten Pakete.
Die Ergebnisdatei steht im aktuellen Verzeichnis und kann dann (nach Prüfung!) in die vorhandene /etc/apt/preferences eingefügt werden. Das darf in der Regel nur root !
Da es sich um ein "quick hack" Script handelt, gibt es keinerlei Fehlerprüfung der Parameter.
Hier die source, speichern z.Bsp als myScript und mit chmod +x myScript ausführbar machen.
#! /bin/bash # Author: oc2pus # create a apt-preference file for all packages matching filter # # usage: $0 preferencefile filter MYRPMLIST="./tmpRPMList" if [ -z "$1" ]; then MYPREF="./myPreferences" else MYPREF="$1" fi # create list of installed packages echo "$0: create temporary package list ($MYRPMLIST)" if [ -z "$2" ]; then rpm -qa --queryformat "%-30{name} %20{version} %10{release}\n" | sort > $MYRPMLIST else rpm -qa --queryformat "%-30{name} %20{version} %10{release}\n" | sort | grep "$2" > $MYRPMLIST fi # sample line: # CheckHardware 0.1 778 # create preference echo "$0: create preference file ($MYPREF) filter ("$2")" cat $MYRPMLIST | awk '{print "Package: "$1}{print "Pin: version "$2"-"$3}{print "Pin-Priority: 1001"}{print ""}' > $MYPREF echo "$0: remove temporary package list ($MYRPMLIST)" rm -f $MYRPMLIST echo "$0: check $MYPREF and append it to your /etc/apt/preferences"
Script-Gurus sind aufgerufen dieses Script zu "veredeln" ... evtl mit automatischem append an die vorhandene /etc/apt/preferences
oc2pus