[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [HS Debian] rm : liste d'arguments trop longue



Steve, samedi 24 mars 2007, 08:15:57 CET
> 
> Bonjour,

’jour,

>[...]
> >   Normal, la commande  « ls 31* »  met aussi les noms de
> > fichiers dans la ligne de commande. Mon exemple était « ls
> > »,  et, lui, il ne comporte que « ls » dans la ligne de
> > commande.
> 
> 	Là je ne comprends pas très bien : « ls 31* » retourne
> moins de fichiers que juste « ls » non ?  Mais après test,
> effectivement ça marche.

  Le problème  n’est pas avec ce qui est  « retourné »  mais avec
ce qui est donné.
  Comme l’a expliqué Yves dans le compte rendu de sa recherche de
la limite perdue,  la  limite  concerne  la taille de la ligne de
commande  une fois qu’elle est « globée » (les jokers remplacés).
Dans 'ls | xargs rm', la ligne de commande est « ls »,  alors que
dans 'ls 31*', c’est « ls 31bla1 31bla2 ... », qui déborde.
  Ce que tu appelle « retourné » est ce qui est « affiché », plus
précisément ce que ls envoie dans son flux de sortie standard. La
taille du flux n’est pas limitée  (/dev/zero est un flux infini).
Et c’est  parce que  la taille du flux  n’est pas  limitée que je
t’ai proposé d’utiliser un tube et xargs.

>[...]
> Question subsidiaire 2 : quelle est la longueur maximale d'un
> fichier ?

  Je suppose que tu veux connaître la longueur maximale d’un _nom
de fichier. Tu peux trouver tout ça par là :
    http://en.wikipedia.org/wiki/Comparison_of_file_systems
(d’ailleurs, si quelqu’un se sent motivé de traduire la page pour
compléter la version française...)

  Ça va de 8 octets à 4032 octets (reiserfs, mais ça correspond à
255 caractères).

  Pour la taille maximale d’un fichier,  ça va de quelques  kio à
l’infini (GPFS, pour les clusters).

> N'y a t-il pas une variable d'environnement s'y
> rapportant et qu'on peut modifier ?

  Eh non.

-- 
 Sylvain Sauvage



Reply to: