On Sun, 22 Apr 2001 13:16:31 +0100, Brian Somers wrote:
> > On Sat, 21 Apr 2001 20:04:31 +0100, Brian Somers wrote:
> > > > Sorry for butting in. Adding new non-portable functionality to solve the 
>problem
> > > > which could be adequitely taken care of using existing and well known
> > > > techniquies is not appropriate, I completely agree with you on that.
> > > 
> > > And I'm still waiting to see those well known techniques.
> > 
> > Attached small script should solve this problem and doesn't require
> > introducing incompatible option in the standard tool.
> > 
> > For example:
> > 
> > find /usr/src -type f | xargs larg cp targetdir
> > 
> > For speed purposes it could be implemented in raw C.
> > 
> > -Maxim
> > 
> > #!/bin/sh
> > 
> > if [ ${#} -le 2 ]; then
> >     echo "Usage: larg command lastarg arg1 [arg2 ...]"
> >     exit 0
>              ^
>              oops :-)
> > fi
> > 
> > COMMAND=${1}
> > LASTARG=${2}
> > shift 2
> > exec ${COMMAND} "${@}" "${LASTARG}"
> 
> Yes, I think this will work as long as your environment isn't 
> polluted by something like $ENV (any increase in the environment size 
> will effect xargs's calculation of how many arguments will fit on the 
> command line).

I don't see why it matters. The only thing that matters here is number of
args accepted by the shell. Anyway this is a 2-minute prototype... ;)
As you can see, the problem in fact could be easily solved using "well
known techniques".

> Of course I still prefer the xargs fix - as you said above, it'd be 
> nicer in C :-)

I still don't see why it couldn't be an separate tool (perhaps more
general that my prototype).

-Maxim

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to