OVH Cloud OVH Cloud

Re: réinstallation à l'identique

5 réponses
Avatar
Bertrand Prémaillon
-------- Message original --------
Sujet: Re: réinstallation à l'identique
Date: Thu, 27 Apr 2006 15:01:27 +0200
De: Bertrand Prémaillon <Bertrand69fr@yahoo.fr>
Pour: Philippe Monroux <monroux-listes@wanadoo.fr>
Références: <20060426025942.GA4448@mondomaine>

Philippe Monroux a écrit :
> Bonjour,
>
> Mon DD étant tombé en panne, j'ai fait une réinstallation de ma sarge
> à l'identique méthode de linuxfr.org à savoir :
>
> -installation par le réseau
> -dpkg --set-selections < mes_paquets # sauvé sur un support
> -dpkg --get-selections > mes_paquets
> -sudo aptitude -u
> -fin de l'installation par aptitude
>
> Tous les paquets que j'avais avant sont là, bien sûr. Il y avait
> peut-être un autre moyen, mais j'ai du choisir pas mal de meta paquets
> au moment de l'installation par réseau (de peur que la méthode ne
> fonctionne pas).
>
> Résultat j'en ai trop.
>
> Ayant les deux listes (anciens-paquets et paquets-installés)
> connaissez-vous un moyen rapide de supprimer les paquets indésirables?
>
> Merci
>


Bonjour,

Suppose que listePaquetsActuels.txt soit la liste des paquets
actuellement présents et listePaquets.txt la liste de tes anciens
paquets. Voilà ce que tu peux faire :


#!/bin/bash

cmp -s listePaquetsActuels.txt listePaquets.txt

if [ $? -eq 0 ] # Teste du code de sortie de la commande"cmp".
then echo "Pas de restauration de paquet à faire"
else

cat listePaquetsActuels.txt listePaquetsActuels.txt
listePaquets.txt | sort | uniq -c | grep ' 2 ' | awk '{print $2}' >
/tmp/listeDiff.txt
cat /tmp/listeDiff.txt
NB="$( wc /tmp/listeDiff.txt -l | awk '{print $1}')"
echo "Voulez-vous installer ces $NB paquets ? (O/n) "
read rep
if [ "$rep" = "o" -o "$rep" = "O" ]
then

for i in `cat /tmp/listeDiff.txt`; do apt-get
remove $i --assume-yes ; done;

fi

fi



Dans la ligne

cat listePaquetsActuels.txt listePaquets.txt listePaquets.txt | sort |
uniq -c | grep ' 2 ' | awk '{print $2}' > /tmp/listeDiff.txt


En fait tu cherches les paquets qui apparaissent deux fois après la
concaténation de listePaquetsActuels.txt listePaquetsActuels.txt
listePaquets.txt concaténés. Ça te donnera les paquets qui sont présents
sur ton système et qui ne l'étaient pas avant.








___________________________________________________________________________
Faites de Yahoo! votre page d'accueil sur le web pour retrouver directement vos services préférés : vérifiez vos nouveaux mails, lancez vos recherches et suivez l'actualité en temps réel.
Rendez-vous sur http://fr.yahoo.com/set


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

5 réponses

Avatar
Gilles MISSONNIER
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.

---1480404480-174340613-1146156043=:25200
Content-Type: TEXT/PLAIN; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: QUOTED-PRINTABLE

il y a la commande "comm" qui fait ça très bien :
il faut 2 fichiers listes TRIÉES, exemple : l1 et l2

comm -2 -3 l1 l2
affiche ceux qui sont UNIQUEMENT dans le fichier l1

comm -1 -3 l1 l2
affiche ceux qui sont UNIQUEMENT dans le fichier l2

comm -1 -2 l1 l2
affiche ceux qui sont dans les 2 fichiers l1 et l2

2 centimes

------------

cat listePaquetsActuels.txt listePaquetsActuels.txt
listePaquets.txt | sort | uniq -c | grep ' 2 ' | awk '{print $2}' >
/tmp/listeDiff.txt

En fait tu cherches les paquets qui apparaissent deux fois après la
concaténation de listePaquetsActuels.txt listePaquetsActuels.txt
listePaquets.txt concaténés. Ça te donnera les paquets qui sont pr ésents
sur ton système et qui ne l'étaient pas avant.


---1480404480-174340613-1146156043=:25200--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Bertrand Prémaillon
Gilles MISSONNIER a écrit :
il y a la commande "comm" qui fait ça très bien :
il faut 2 fichiers listes TRIÉES, exemple : l1 et l2

comm -2 -3 l1 l2
affiche ceux qui sont UNIQUEMENT dans le fichier l1

comm -1 -3 l1 l2
affiche ceux qui sont UNIQUEMENT dans le fichier l2

comm -1 -2 l1 l2
affiche ceux qui sont dans les 2 fichiers l1 et l2

2 centimes

------------



Merci !! C'est beaucoup plus simple que mon usine à gaz. ;)


cat listePaquetsActuels.txt listePaquetsActuels.txt
listePaquets.txt | sort | uniq -c | grep ' 2 ' | awk '{print $2}' >
/tmp/listeDiff.txt

En fait tu cherches les paquets qui apparaissent deux fois après la
concaténation de listePaquetsActuels.txt listePaquetsActuels.txt
listePaquets.txt concaténés. Ça te donnera les paquets qui sont présents
sur ton système et qui ne l'étaient pas avant.










___________________________________________________________________________
Faites de Yahoo! votre page d'accueil sur le web pour retrouver directement vos services préférés : vérifiez vos nouveaux mails, lancez vos recherches et suivez l'actualité en temps réel.
Rendez-vous sur http://fr.yahoo.com/set


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Philippe Monroux
Bonjour,

Gilles MISSONNIER a écrit :

il y a la commande "comm" qui fait ça très bien :
il faut 2 fichiers listes TRIÉES, exemple : l1 et l2
comm -2 -3 l1 l2
affiche ceux qui sont UNIQUEMENT dans le fichier l1
comm -1 -3 l1 l2
affiche ceux qui sont UNIQUEMENT dans le fichier l2
comm -1 -2 l1 l2
affiche ceux qui sont dans les 2 fichiers l1 et l2
2 centimes



que 2-2 centime car :

,----
| Sans option, comm produit trois colonnes en sortie. La première
| colonne contient les lignes présentes uniquement dans fichier_1, la
| seconde colonne contient les lignes présentes uniquement dans
| fichier_2, et la troisième contient les lignes communes aux deux
| fichiers.
`----

or moi il me faut l2-l1 que je peux (peut-être) obtenir par... l2-l1
Suis pas avancé là car il me faut remplacer le signe `-' !


--
Philippe Monroux
Ile de la Reunion
E 55.3 S 21.5


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Gilles MISSONNIER
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.

---1480404480-257938522-1146324869=:31755
Content-Type: TEXT/PLAIN; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: QUOTED-PRINTABLE


pour moi, ce que tu décris par "l2-l1" signifie :
je cherche ce qui est dans le fichier l2 et PAS dans le fichier l1

donc :
comm -1 -3 l1 l2 > le_fichier_l2-l1
et tu remets 2 centimes,
sinon, si ce n'est pas ce que tu cherches, fais un dessin.


il y a la commande "comm" qui fait ça très bien :
il faut 2 fichiers listes TRIÉES, exemple : l1 et l2
comm -2 -3 l1 l2
affiche ceux qui sont UNIQUEMENT dans le fichier l1
comm -1 -3 l1 l2
affiche ceux qui sont UNIQUEMENT dans le fichier l2
comm -1 -2 l1 l2
affiche ceux qui sont dans les 2 fichiers l1 et l2
2 centimes



que 2-2 centime car :

,----
| Sans option, comm produit trois colonnes en sortie. La premièr e
| colonne contient les lignes présentes uniquement dans fichier_1, l a
| seconde colonne contient les lignes présentes uniquement dan s
| fichier_2, et la troisième contient les lignes communes aux deu x
| fichiers.
`----

or moi il me faut l2-l1 que je peux (peut-être) obtenir par... l2-l1
Suis pas avancé là car il me faut remplacer le signe `-' !


---1480404480-257938522-1146324869=:31755--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Philippe Monroux
Bonjour,

Gilles MISSONNIER a écrit :

pour moi, ce que tu décris par "l2-l1" signifie :
je cherche ce qui est dans le fichier l2 et PAS dans le fichier l1



Exact.

comm -1 -3 l1 l2 > le_fichier_l2-l1



Effectivement je suis allé un peu vite là. Mais j'ai une
excuse. Pensant que l1 était contenu ds l2 je pensais que,

$> comm -2 -3 l1 l2

ne devant me donner que ce qui se trouve ds l1 et pas ds l2 il devait
me rendre l'ensemble vide...Mes essais contredisant ça je me disais
donc que ça me rendait ce qui était ds l1 tout court (comm n'aurait
donc pas beaucoup d'intérêt en ce cas). Et bien en fait l1 n'est pas
contenu ds l2 (ça je ne comprend pas pour quoi mais bon...). D'où ma
mauvaise réponse. Donc la solution n'est plus évidente maintenant.

et tu remets 2 centimes,



+1 pour avoir mal posé mon pb :)

sinon, si ce n'est pas ce que tu cherches, fais un dessin.



Je vais relire Cantor

ph
--
Pourquoi les caméléons femelles disparaissent ?
Parce que sur l'herbe elles deviennent rouge.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact