Date: Sun, 22 Apr 2001 13:16:31 +0100 From: Brian Somers <brian@Awfulhak.org> To: sobomax@FreeBSD.org Cc: brian@Awfulhak.org, kabaev@mail.ru, sheldonh@uunet.co.za, freebsd@gndrsh.dnsmgr.net, bsd@bsdhome.com, schweikh@schweikhardt.net, freebsd-current@FreeBSD.org, brian@Awfulhak.org Subject: Re: =?ISO-8859-1?Q?Re:_cp_-d_dir_patch_for_review_(or_'xargs'=3F)?= Message-ID: <200104221216.f3MCGV517027@hak.lan.Awfulhak.org> In-Reply-To: Message from Maxim Sobolev <sobomax@FreeBSD.org> of "Sun, 22 Apr 2001 13:53:58 %2B0300." <200104221053.NAA86650@ipcard.iptcom.net>
next in thread | previous in thread | raw e-mail | index | archive | help
> 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). Of course I still prefer the xargs fix - as you said above, it'd be nicer in C :-) -- Brian <brian@Awfulhak.org> <brian@[uk.]FreeBSD.org> <http://www.Awfulhak.org> <brian@[uk.]OpenBSD.org> Don't _EVER_ lose your sense of humour ! To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200104221216.f3MCGV517027>