From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 17750 invoked from network); 18 Jan 2021 23:10:48 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 18 Jan 2021 23:10:48 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20200801; t=1611011448; b=1SA1gPV0kfYCfA0qJgq9w41muFUy4fQL5zAxnGkddM/45futH9C21G7Inwbujkir8PgDyqWbYc wj6zgo/2po1dymSpDsCkAvr6/+1LqZSEiav4pnYp6vyQiKvIXzBoMFCrERAnyg0JaHPuq9ks2A xTfGLNEk+07/kQyLfwyUG/UnY91AYy3joqPh7TNMK50ZwlSNk2Pd/3xpA6uE8Fiwa50i7L/FLL 7jXK9Cix1cppqws/3U6mnZbF/i5+aREzBHBBgk0msomcRGYyW4wFXn2XZ2k3c/fNui0NU78S1W saQS1XpsWrn1Lqlud6+E6vlf3WTIsGwf9pSX8jM0z5iM8g==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ot1-f47.google.com) smtp.remote-ip=209.85.210.47; dkim=pass header.d=brasslantern-com.20150623.gappssmtp.com header.s=20150623 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20200801; t=1611011448; bh=aTF/CYVbeuCDFoD6NgdRzoEL6UnAXEKtZlRgbXOXAzk=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:DKIM-Signature:DKIM-Signature; b=sAQFRT/4kRdgAjl92RNFhzf+ErAPVnHTbHh1HL8T7XgUSSIRNhIYs01Z3XDbwKaEzirCsX7O/Y DASUYY7ADDv7aybfyUTqaFkiE9P2XGNCsCUAVsrUgoOFPLfXgfeP4ahim0nv3VJgecCBG+9P+Y VmXGGwNqb9yQI0JEKIz3gHv6qZ9huc92XuMG/C2E/RcCydaqGdD3audhjHWw+U8zUfGG4ITz5u XC6Jp4M1x/jFYB//SMl3cl+TjYBFzj1WLjPirEW5yohC5/ZdQnQKAcXeWfBNgNwLMdKjNmEoYQ NvvD3KvthiTTBanWK6xDXwP1rnqXnQhzthj9oO+yV+Hlew==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20200801; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Type:Cc:To:Subject:Message-ID :Date:From:In-Reply-To:References:MIME-Version:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=vx3IgUNr3kTFFqQr1nnGVHrFBPV3lp2YnxsFcp3H55c=; b=wmQprEEmp1t+YWma/KGA/pR2Jd SBURKzaoOya7IGjVLInWNaLbWqUueK/c2L1bUoGlnu1gNc54G6b6azUSzYYzL4PDgcX4feebjL2+i eMUoYO0iFd/6GzBy9Wf4VGWM5kgVBDsr56WWVbbhzGL9d8e5C8tFshYvIfbFqima/nVkXSNn+Z8ZG bBU+Oy7yn3ORu1F+vKLjyl+TxcK6i0O1HjhVwlfTN63/+dDRrHDxzGLfxiZKqUb7mxhKuDxeWP79o 5RZNWaaoVZ9M/k9m5gM+3vT98JTbanbzPlx3uIUIoH76tIIzC16NkTvbfPeTJIHMT0rioE4IB7Z7h km5Ddj5Q==; Received: from authenticated user by zero.zsh.org with local id 1l1dfU-000PDk-1S; Mon, 18 Jan 2021 23:10:40 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ot1-f47.google.com) smtp.remote-ip=209.85.210.47; dkim=pass header.d=brasslantern-com.20150623.gappssmtp.com header.s=20150623 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-ot1-f47.google.com ([209.85.210.47]:33108) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1l1dew-000Or0-2K; Mon, 18 Jan 2021 23:10:06 +0000 Received: by mail-ot1-f47.google.com with SMTP id b24so18016048otj.0 for ; Mon, 18 Jan 2021 15:10:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=vx3IgUNr3kTFFqQr1nnGVHrFBPV3lp2YnxsFcp3H55c=; b=kztRckgZM3LCWQsBXosPSBjcao5kNZWrnhYw5F/imRrgxouakIc+453Hy47C9uMcHL 9PtDp66OnlxC05dhgh7rJAY7bgIhaQv23JZHSjZwThlKUEkVMGsNj55RtLWlnq2nWqB6 Ez/B6J5qUI/cE0JuoBZFJS0uX6WceMqWTdn+A3J8Jehar0zqjFeZmCOWFNFZjtfLUIUn ifkbo+ckUbmTQSZRNsig36XB6k2IV29en1DtBFka98RgLXpswbV+MD0/kALKz3OSRxiq iSnXZUGgOQNs8iB8i7saAyBfHt9oFvLZEx9EUpiRYaJZ3n1O56mFuYyTqdVknwg3t4sB mEDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=vx3IgUNr3kTFFqQr1nnGVHrFBPV3lp2YnxsFcp3H55c=; b=nxH9cwTVfQ/Km4xhNoaKwh/9+Mkg1R5JkHCbKDA/qhHONq48HNd76ageIyi5osmmul WW05NosjReyPPvFEnxDVzqwSOOi/h17ikNlyFaZ7Qf2tqX5l+XKq5fgO+AB4mwAFg4mQ I8U+E3LMhjXDEcqvRzwCdyW80hN/bvoW159vYtfEhe5/6mORRg4jlVgEmeQTcm7ZKfWE cnsvZ7xI6LAEkBvd+MHxTxXBXJQ1+X6NfRcfdVYdfs2DOAtl44qnqnrsW2IlcMJFrIE+ tFWQLeoX1345cOQfxFW6ZlnbnKch/h/Qn9EV4gxooh3pui7bJ04yIui/TgHd8vz2F3bx bngg== X-Gm-Message-State: AOAM532BOa6gnJDS0Y5LGIRWIsvU3FWHstGDLxRNyy5l+EnhJ+1Sz2fv KVp2SCXBJlYVGh7UATaJmFd0E+VTT6TYUulUiVp7Ww== X-Google-Smtp-Source: ABdhPJxiaGbb2EYHA4miHn8FBeFyQxdYviyBBQSe+iWPrqZEnuTKQkIzuy4jEM0OVvRYym6hxpO1D3OG+0O0xeps0vY= X-Received: by 2002:a9d:6358:: with SMTP id y24mr1366252otk.229.1611011404722; Mon, 18 Jan 2021 15:10:04 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Bart Schaefer Date: Mon, 18 Jan 2021 15:09:53 -0800 Message-ID: Subject: Re: xargs with zsh function To: Ray Andrews Cc: Zsh Users Content-Type: text/plain; charset="UTF-8" X-Seq: 26393 Archived-At: X-Loop: zsh-users@zsh.org Errors-To: zsh-users-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-users-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: On Mon, Jan 18, 2021 at 2:14 PM Ray Andrews wrote: > > Playing with that running this script (test): > > $ . test > xzargs: bad math expression: operator expected at `rap' There's something in your test script you're not showing us; nothing in xzargs() { zargs -t -- "${(f)$(read -d '' -E)}" -- "$@" } would be evaluating a math expression. > ... It works fine with a single literal input or a single string > variable but I'd want to be throwing large numbers of lines at this. The way xargs works is to gather up N lines until a "large enough" argument list is assembled, and then call the command with those arguments. The way zargs works is to take all of those arguments on a single command line and break them up into batches of N. print -l "$vvar" # this only prints one line, argument will be "mnt rap" print -l $vvar # This prints two lines, arguments will be "mnt" and "rap" If you actually want to see this in action you need to specify that zargs should only process one argument at a time. % xzargs() { zargs -n 1 -t -- "${(f)$(read -d '' -E)}" -- "$@" } % print -l $vvar | xzargs el el mnt howdy el rap howdy