On Sun, 6 Oct 2002 00:21:59 +0200
jipe <[EMAIL PROTECTED]> wrote:

> > > 
> > > Exemple: Je voudrais afficher la liste de tous les fichiers contenus dans 
> > > toutes les archives rpm d'un CD. Je fais:
> > > find /mnt/cdrom -type f -name *rpm -exec rpm -pq --filesbypkg {} \;  
> > > R�sultat, aucun pb si aucun des r�pertoires ou des fichiers du CD ne 
> > > comportent d'espace. Sinon, j'ai �a:
> > > error: open of /mnt/cdrom En failed: Aucun fichier ou r�pertoire de ce type
> > > error: open of /mnt/cdrom En failed: Aucun fichier ou r�pertoire de ce type
> > > etc, etc,...
> > > 
> > > En --> /En vrac/
> > > Voili, voilou. C'est un cas r�el et si quelqu'un a la solution, je suis 
> > > preneur.
> > > A+

ah ah ah! z'allez rire! j'�tais vraiment fatigu� hier soir! et en + insomniaque....

rpm refuse les noms avec espace parce qu'il traite chaque cha�ne entre espaces apr�s 
son invocation comme 1 rpm distinct:
rpm 1er.rpm 2eme.rpm etc...

rpm le chemin vers.rpm devient:
rpm le -> erreur
rpm chemin -> erreur
rpm vers.rpm -> erreur

solution:
la protection par " " 
rpm "le chemin vers.rpm"

lors de l'invocation avec find, il convient de prot�ger {} avec " " et chaque " avec \ 
pour qu'il soit pris en compte -> la commande d'origine:
find /mnt/cdrom -type f -name *rpm -exec rpm -pq --filesbypkg {} \;  
devient:
find /mnt/cdrom -type f -name *rpm -exec rpm -pq --filesbypkg \"{}\" \; 

bon! je retourne au boulot...
bye
jipe 

Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://www.mandrakestore.com";

Répondre à