(Courriels de diversion: <marquerent@tabous-enclume.com> <susmentionne@verbalisons-epigraphes.com> <militaristes@desengagerez-reboisant.com> <decomptais@complairai-attribuiez.com> <pianotee@vassaliserent-linoleums.com> <chape@attroupements-cesserons.com> <giclaient@rescousses-manigancerez.com> <chicanerent@perennisais-charnelle.com> <vereuse@commuent-surchauffant.com> <dangereuse@rumine-chagrineraient.com> )


>>>>> "kr" == Kevin Rowanet <kevin.rowanet@wanadoo.fr> writes:
  kr> et j'ai eu le message : « /bin/rm: liste d'arguments trop longue ».
  kr> 
  kr> Questions :
  kr> 1/ quelle est la limite et où est-elle définie ? (je suis sous bash, si 
  kr> la réponse dépend du shell)

  <URL:http://www.culte.org/listes/linux-31/2001-05/msg00198.html>

  Épatant ce qu'on retrouve dans les archives.
  

  kr> 2/ Comment contourne-t-on élégamment la difficulté ? Moi j'ai fait une 
  kr> boucle sur la première des deux lettres, ne faisant donc porter * que 
  kr> sur la 2eme.

  par exemple avec

     % find repertoire prefixe-nom -exec rm {} \;

  ou
  
     % find repertoire prefixe-nom* -print0 | xargs -0 rm

  la seconde solution ayant l'avantage de générer un plus petit nombre
  de processus fils (chercher "xargs" sur le site du CULTe donnera
  d'autres messages utiles, par exemple sur l'intérêt du -print0). 

   
  kr> Et dans un script, faut-il systématiquement tester la taille de la liste 
  kr> d'arguments avant de lancer une commande (ou intercepter l'erreur) ?

  il n'est généralement pas possible de le tester, puisque la commande
  qui permettrait de tester souffrirait du même problème. Il faut
  penser à utiliser des solutions à base de xargs à chaque fois qu'une
  commande pourrait comporter un grand nombre d'arguments. 
  
-- 
Eric Marsden                          <URL:http://www.laas.fr/~emarsden/>


--------------------------------------------------------------------
Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>