Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Nov 2000 22:15:12 +1100
From:      Zero Sum <count@shalimar.net.au>
To:        Sebastiaan van Erk <sebster@sebster.com>, Alfred Perlstein <bright@wintelcom.net>
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: argument list too long
Message-ID:  <00111722151204.01989@shalimar.net.au>
In-Reply-To: <20001117011559.B3656@sebster.com>
References:  <20001116122313.A69018@sebster.com> <20001116154822.B18037@fw.wintelcom.net> <20001117011559.B3656@sebster.com>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----

On Friday 17 November 2000 11:15, Sebastiaan van Erk wrote:

>
> I'm just brainstorming here a little bit on what I think is a silly
> restriction which I'm sure has it's historical reasons. And instead
> of conceding that it would be BETTER to have argument lists be any
> length, and it being BETTER to pass argument lists from file,
> all I hear is "it's silly to try that, because it doesn't work".
> It's the "lets keep it broke" attitude instead of a "let's fix it"
> attitude that bothers me.
>
Let's get a bit of truth here, no one is saying that getting arguments from
a file is not a good idea.  In fact a fundamental examination shows that it
was always meant to be used that way.  In unix everything is represented as
a file.  Stdin, out and err, are 'just files'.  Devices are 'just files.

I mentioned '-' used to be part of tar, but now it needs the GNU
--from-file it seems.

The very freedoms you want were/are built into Unix if used the right way.
It is when people forget this and introduce things like 'from-file' thae
that devolution occurs and the system loses elegance.

> Basically, it's IMPOSSIBLE to write a library to do what I want to do,
> because there's no way that I can get an unlimited number of args to
> a program that doesn't have a --args-from option. So this is a
> fundamental limitation of the OS.
>
I am not sure that that is correct.  It would take some work on __init()
though.  So, technically not a library.

And another point you miss/  I'll stick with " find | tar " because those
processes can run concurrently while your " tar `find`" runs sequentially.

Just accept that is is a dead end construction. Why have to wait for the
find to finish before the tar starts?  Particularly if you are talking long
finds and huge argument lists.  So nothing is broken and nothing needs
fixing.

Unix is very good at running lots of small jobs very quickly and shares
resources well.


Geoff...
--
count@shalimar.net.au
Nihil curo de ista tua stulta superstitione


-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 5.0i for non-commercial use
MessageID: SrRH1Pw4kSun12lV6j4IuSfuWMZdYtHr

iQA/AwUBOhUTQPh4xz7LU/evEQL3YQCgjSRTfO6do4ypv9it2rc72Y8oeBUAoKe+
TpR0d6oZFElP9svsd89hl15T
=ZIqG
-----END PGP SIGNATURE-----


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?00111722151204.01989>