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,T_SCC_BODY_TEXT_LINE, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 3756 invoked from network); 25 Mar 2022 18:28:22 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 25 Mar 2022 18:28:22 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1648232902; b=lt3HBx/ar9B4552ZDiBucdJrCbJI82tWieZ2gLFu1SKMGaDqb2sbBFyqF4GwHMPmjJ6RZs0NuW fsN09d50XANg8/b375uHseeg++lVc5A/ndnsz+uBA7lE8dwUWOq4DDKyiM0K1jigZPNjMdrYIK mHXljFjo87iXH20cO3JC8lUnS5dwcNx3vrr2vGWj99ZcteaqKso1U1Cpe5v5pkjcCJ6zkQzPmp 5QLDrm9o68ZCZo0dLO5VA19wGNxmkHH3KPTSUANjyzYvRtva8sHj7c7lqXYpb0edhOq/UI1yDC zXdiuJZfDRzAEAyncoW2QsvSk6vU9OYkIH29QiGNM9ULYA==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-yb1-f177.google.com) smtp.remote-ip=209.85.219.177; dkim=pass header.d=brasslantern-com.20210112.gappssmtp.com header.s=20210112 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-20210803; t=1648232902; bh=iIkZRAYS/a7ilCYeaVXs6NUfeaWMony1lqmNYgr2sho=; 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=cUPqQTnA7TIyb4R9Ba+hzY3SOxZbb+KnJJAATw2XrWXn2q0WA8rDzb74cangyKrWdcAGrX+yIn j/9HLOGWFDPsu9uktkK7suX7kOlxslBxKB0R9eQv1SCeuG5kORwl4NUeAsRssAa1z9GwLvuwc6 SW3Z9Ulp5L+BanbbjT2UzLWP3YvP7OGRNkoNDbEainq6ApGPVJ2mO0LhO5yGWx7UsrKomzUTxc ZvWpU28Nu97jWfsMwNhcoB/sCjB20yMGBG0J+hqgDtyi462+rD0UtySwojDVQGfx2QEG4AGqd7 5h5pbVDIf4W564Mir09O+rPsjpJwL3I9zxrFZl7t71sahQ==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; 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=iIkZRAYS/a7ilCYeaVXs6NUfeaWMony1lqmNYgr2sho=; b=smAHq4tUVAYlwiGiX1+w6u3IBF 7kStIaQMa63esdbwL9z+CAv2wnaZikfWPzJQkEtn7DM+J0B5kTUs0mShr0XkdeQy2h2Ot/++WyYcC lbLxkc39yShIsqbnXUqgGFTjpIeD2B8iYg1iRyfRAZsQi3ICjrJDC0CaP9Zjn+1vYG0S+lkdfC8Zi KoHmWaQTxa9J7ANWc7k3vXg3FFKuBy9Sj8YfYl2RvCY18aMw8FlFtjHM22OPMpj2eYey30T+a6K5p FelVnpQ9m6ZN//Lz/vJsclYRiQnEV2m2dvOIkY1sjdeKWCk6Ma3wLKr4GTJvVOonCWQKNFJkCeEzB oevO3NZw==; Received: from authenticated user by zero.zsh.org with local id 1nXofc-000MSp-G8; Fri, 25 Mar 2022 18:28:20 +0000 Authentication-Results: zsh.org; iprev=pass (mail-yb1-f177.google.com) smtp.remote-ip=209.85.219.177; dkim=pass header.d=brasslantern-com.20210112.gappssmtp.com header.s=20210112 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-yb1-f177.google.com ([209.85.219.177]:42633) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1nXoej-000Lmv-40; Fri, 25 Mar 2022 18:27:26 +0000 Received: by mail-yb1-f177.google.com with SMTP id u103so15462723ybi.9 for ; Fri, 25 Mar 2022 11:27:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20210112.gappssmtp.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=iIkZRAYS/a7ilCYeaVXs6NUfeaWMony1lqmNYgr2sho=; b=OkAnVUdtQxTBOSispCqP9YKhEuUnS7+QTB64IWODWmFchZMv83XPvJZbHR6HZdHraB 2SogeXn/oMnwPCrYa8oHGjxoPDtEE3OyIBDRMFMuIQtTQW9frFFP9xNPIoTB40qZKPKa qCE06ziMFwNDf/rMxJhRucPQ1ASQqpsMRvrNblldpr/jknI7USJgbpHFatHyAiuUHYF/ LNZC32+jnovxKvzrkfg0GXltuJVHPmSrXL9S/ZgLmM0Nw2UclQgod9GQtzBGrZrlDhV4 K5SkLAgbe30inR+XZ6FxELE51qM5LwmeKvfD+mavcY2CuQWD/9nv8J0HoXuqXOzL/z31 FGWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=iIkZRAYS/a7ilCYeaVXs6NUfeaWMony1lqmNYgr2sho=; b=GAeC+S9SwXMjuiaY5VnrqtVX00imnk/qdmF1IIrlLwtowYVnBr/sRY+pkE/Qx08bXh kBGDMY+DAGBX4dd6B4EXOJeqfUXJgaOG5qTRawLUEFAy4zBlgBDyr15QYrtg9dLEder2 Ss3KM9vy2/cnCaaU7OnUUEAa9jgE/Z1mRSG9c78nPCsZ7+i1vdxy1Au/4lmijSCNOQZg bkGxb5jRlAfHZ5IdhQV2Gu+5S+mFjJ9qt/1noi2f8ZC2sMLI3So4MzVJjU+PiDJXh+OL 9C4qIBjKiLhGQetCSyBGvxPQzWURAOSxSCwz8d7/twAuhyy2mguDV3OWE0R0SkW7mK/H 4z8g== X-Gm-Message-State: AOAM532RvAsbkA43QV390GMNx699NR+YnaEy4JJtWs2k8SjjPjPR0ugR +EyqrRh7nRE91RwJqTT5eCPZKlhuAkvfZxqT6bf49g== X-Google-Smtp-Source: ABdhPJw3bixHXstqncjMzWXZvbcoya6ChGT1MvvILGtxXUFFCzmwOKg+isSncBIOwDH/LdtrwxITFRCsrXdCQP/L7rs= X-Received: by 2002:a25:8109:0:b0:633:73fc:208d with SMTP id o9-20020a258109000000b0063373fc208dmr11556945ybk.462.1648232843677; Fri, 25 Mar 2022 11:27:23 -0700 (PDT) MIME-Version: 1.0 References: <1E0E1226-E3E8-40AD-87CD-93A602B1B08B@easesoftware.com> In-Reply-To: <1E0E1226-E3E8-40AD-87CD-93A602B1B08B@easesoftware.com> From: Bart Schaefer Date: Fri, 25 Mar 2022 11:27:12 -0700 Message-ID: Subject: Re: Parallel processing To: Perry Smith Cc: Zsh Users Content-Type: text/plain; charset="UTF-8" X-Seq: 27617 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: On Thu, Mar 24, 2022 at 9:34 PM Perry Smith wrote: > > Has something like prll (parallel) https://github.com/exzombie/prll been added to zsh? Look at the "zargs" function, -P option (which works like "xargs -P" for the most part). Silly example: autoload zargs zmodload zsh/system zargs -n 2 -P 4 -- {1..20} -- eval '() { print $1 $sysparams[pid]; sleep 2 }' Note you need -n 2 there because the first "word" is the argument to eval and the second "word" is the successive integer from the list 1 through 20. This isn't exactly what you want because it waits for all four jobs before starting the next batch, but keeping a specific number of children running is not straightforward with the job-management operations available to a shell.