[linux] Re: argumentlist too long...

Paul Slootman paul+nospam op wurtel.net
Do Aug 7 11:16:35 CEST 2008


On Wed 06 Aug 2008, Micha Kersloot wrote:
> Op woensdag 06-08-2008 om 15:08 uur [tijdzone +0200], schreef Paul
> Slootman:
> > On Wed 06 Aug 2008, Hans Paijmans wrote:
> > 
> > > Ik heb vaak directories met heel veel bestanden. Zogauw je dan expansie
> > > gaat doen, bijvoorbeeld met 'rm *' of 'dir *.txt' krijg je de melding
> > > 'argument list too long' en moet je met 'for x in *.txt; do ...; done'
> > > gaat zitten prutsen, wat erg langzaam is.
> > > 
> > > Is daar niet een of andere mouw aan te passen?
> > 
> > Ipv. 'rm *' zou ik doen: 'cd ..; rm -r $OLDPWD'
> > 
> > Of je doet: 'echo *.txt | xargs dir'
> 
> da's een spannende. Maar volgens mij lost dit het probleem niet op.
> $> ls *.txt | xargs rm
> 
> gebruik ik vaker om dit sort problemen op te lossen. Overigens is ook

Als 'rm *.txt' niet werkt, dan zal 'ls *.txt' net zo goed niet werken;
beiden zijn nl. externe commando's die dus via een exec gestart moeten
worden. En dan krijg je die 'arg list too long'.

Met 'echo *.txt' gaat het goed omdat echo een shell builtin is.

> dit langzamer dan een rm *.txt omdat het rm commando steeds opnieuw
> opgestart moet worden.

Een paar keer maar; ik denk dat dat nauwelijks merkbaar zal zijn.
En anders ben ik wel benieuwd naar je alternatief daarvoor.


Paul Slootman



More information about the Linux mailing list