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, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 27880 invoked from network); 25 Sep 2022 13:21:39 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 25 Sep 2022 13:21:39 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1664112099; b=QTx2REA2ZFOqIT49SkxjGkN+dFLhhChX68v1353DEjCV6y81+GOlaMu5sMRQz76u+AGDa1W7DA cIZESVDCKXnpVlFGLN1xXi+XIi7hpqIE8SD4VCktlLx6s635uZ8tokUyDuslws4Q+EWmYyDZRS fsns7ISVtGsofTGDAI5DcsI7DfDGahpWSvfepERRPUD4GBdgbHtQlIJU7OF1PUQ/I8ShgB2R5j KZLYxmNxYt7MlZpNKueQ1sRz4EfZW3nRGfQQnbpVRvDu5VoC5aMPXJGqccq80PY2+1+afV+jHM Q+sQBJXfKcZ9GIqWZ6NaSJS3FRv3eAllelrEOp5kqpwZ2w==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mout.gmx.net) smtp.remote-ip=212.227.17.22; dkim=pass header.d=gmx.net header.s=badeba3b8450 header.a=rsa-sha256; dmarc=none header.from=gmx.de; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1664112099; bh=C6SFLw1y4smX+XVTKdEzsp8PASGeQsQFlfKCBTxW/vU=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Transfer-Encoding:Content-Type:MIME-Version:Reply-To: Message-ID:Subject:To:From:Date:DKIM-Signature:DKIM-Signature; b=VtL/lYNEKdEaHisCRL5hYtchinZaWzSFoMzj73jOeIiC3b2ysxrRi82EnMYCNsZtWmztON+/U5 HEqjKlUx1kY3Qh1JJxGxrdX8BKtCZHdWj7TIqgVhEZ3N8DzJpNh/sPEmDN2tC+ttVMFA9GIzNq Cg2Bmj9cnW4qdSQK9IFO3Y6J4alKQGHM9uP/EopHFCBONXFKNgvqyqL9H3jmrqgWy6CylYKNW8 kUoOXP1GwNa0Ww8OQpCWqfmZwo2zhsGEjR8MwhLY73jPrsqMigno+qJT4YMv0IvPxxQauTdhVb YTx9E8CI/NyqiAoW14fVRS8ErJ+PfHLf4JeMfp/HPGdn3w==; 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-Transfer-Encoding: Content-Type:MIME-Version:Reply-To:Message-ID:Subject:To:From:Date:Cc: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References; bh=Tn0/Nu696/Uk+SBB/soHY2ss6PYFBX389GJ5MQ5gVZQ=; b=YRHJEMsFTSy0gcKNBrHbDnQyTJ EN0zVffHE+JPUYZ1vSpcdJfkkMo7iBmYr57D0EubdRlZiEKDgok4Xb0t5lTD7HPGhX8zo7o9CHS9K VG71DsQokkDHWbIERV25HSuhuDbjY5yuTiy0H2wP52Ykeb+fcqMqTDpYHjrkk+iYvOAEUuCx0COLw 5zum4I+ni70krTUJtI3PKgQHyjcJEwBDGZ9Epiayb+eSEW0QF6YFwl+PMk/xfRDiuO5Jj3KRDVaPz e+G+TPm5X7h2x/HZtO5BoqvpRuMgw9vRiIjK/dfmtKLmFC3Q9u65nebqfNcbuHNxcXLha2/wa1ggk e1Gs2P8A==; Received: from authenticated user by zero.zsh.org with local id 1ocRZi-000D5z-HQ; Sun, 25 Sep 2022 13:21:38 +0000 Authentication-Results: zsh.org; iprev=pass (mout.gmx.net) smtp.remote-ip=212.227.17.22; dkim=pass header.d=gmx.net header.s=badeba3b8450 header.a=rsa-sha256; dmarc=none header.from=gmx.de; arc=none Received: from mout.gmx.net ([212.227.17.22]:46557) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_256_GCM_SHA384:256) id 1ocRY2-000CPi-M5; Sun, 25 Sep 2022 13:19:55 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1664111993; bh=C6SFLw1y4smX+XVTKdEzsp8PASGeQsQFlfKCBTxW/vU=; h=X-UI-Sender-Class:Date:From:To:Subject:Reply-To; b=Q2FwQ3L84VrmKiq1ENCn+psKRfocGc7W8IL8vO93h2LE6RY4FB4nBINgmLdKxEkDr NT8bvOGYaKtEm2fCYzyILo5MfsyEmwa0wsm4ybybV3BBttW4cmRia60sgEHrR92F0M lAemM4Z0XQiB9kwWDBjQU0ourH3YzJi3jJ3WZc2U= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from zitrone.obstwiese ([46.223.163.197]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mf078-1pA7fP1qeY-00gXfm for ; Sun, 25 Sep 2022 15:19:53 +0200 Received: from luthien by zitrone.obstwiese with local (Exim 4.94.2) (envelope-from ) id 1ocRXy-0006lb-Id; Sun, 25 Sep 2022 14:19:50 +0100 Date: Sun, 25 Sep 2022 14:19:50 +0100 From: Dominik Vogt To: Zsh Users Subject: Append newline to many files Message-ID: Reply-To: dominik.vogt@gmx.de Mail-Followup-To: Zsh Users MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Provags-ID: V03:K1:H2mj5i9ibL1Qvkm+4LtkkG0zSqKnxAPN+vNjlz42MlH1wrEXzLP tXhndyklXD7kHkxKi/RUDUT2LaSMiYL+mvqr28WvooW4Cp+sujEmsiJ3NZjotsd7VeM+CbJ qrIU8z7SHIj1MRsS1wUsw/LuGbiXR/7OazoFwQzriwtZPetC0scPa7/o6U+oziK1IoqWudU CHir/SaCB4oGFirKBqBFA== X-UI-Out-Filterresults: notjunk:1;V03:K0:B4nnwq7q+uo=:ob+ARyyq1Y/YFdgDSx+LSa CWZBlfJK9NUT4GxvXNrTHO1aoiyYcijPBlfWFxB0YGF4aN5b3a0O3qEAzmF1CMR1XIIdzNRU6 lOrYPcbtdX+eK+Xj4Teo6BaZE0rc25kFL/4ZIHl92rGk/qVrTMZ/ZT7TeUp6Khf8Tw+Ju/5lJ cZvDpOnZ/rRtpk0SIQvArN70oWKL7b47Whv8SCN4x0F3kle5IFf3Q63fYVu/UumY7pt2ZqCq3 uX1Ui+VZdsA7SBvtPL0OgqPyn7fWCa8YVH6WGC9nSlzNtx0M18VtJLk41r/ouKO38ccY2AKSC 138hPSqn5cKWcJmljX8D8mtm9UdmslA/aTNc42TeWczsa/fdOk1IO+AhTSXerAfu2LUgixhsm C6fED3tacwiCtv8+JCxiStpD/rg1CFSvltm9hVe1z6IgfWWMSNumILwOgixhBZOB82QkGqMQt 4vV6hyd4GSjY/WGNcwICwYjLG7KthZJ/UeOqdjnth/ZV3+ZAje8es3WRcAkuxg+DT2ayW9QH6 KD0pGvsvvsCq1/WvRZpASWM55pR0pi9RwVAvn75doDfBynKNLu6fy3Wq31vbHZzemwc/uY18i d//uHdZiMypi3jrn8AYNbLlPMmf6y9BZ+Ez2S+HwWHRQGON0RFlFKuQqrlG/ySle9pthrGNKR 0STIwclXkZZMm6ofZ4Cydbu0tujnV3nk/kLoTX9kH5XvwJCJJpvolB/cz0xZc003XhkFR0MX+ kNbRW+vrJrarA99MbULzgdvUjGae9fe6sbiSQTn9OPsG8nYjPpFtRWnpLozq4McEO29ZLSXVK K4yXESbhcGqnThIsy6ByXDC8zHh4EVuhAYbh+/7CF+eKMmX1UY2TEehsXTl2eNxebtzMfsXaK lsCPJMYAtNCKCnfUx8oW+v3/5dc0ARoFoU0rtJDPCnzzcfsPxhYR3N5f3NiYMykHvJPO54nrW 02e3bJvBImZY1jGSRcJXIyeyl7GEVxpk3A6ZclLM2Isj4emzIJyx6qZu6JzmCc5nQfx20JRrT gDKnmJz+Gl8VArvP7clbuc7OLZI+qvft4GtID2gTYVMkfBT2UNiLEGXJ4UGNRznRHc8rdcjdY t6LkuQWCl9427jQKry404mvyUxnfMbdPfwmWouC+DN7/dZB2PpihjYmCuGfMogwfgBdhPaSsL 1kDVeAOFvrRq6PJvSyesLTFDn3 Content-Transfer-Encoding: quoted-printable X-Seq: 28124 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: Assume there are thousands of text files that are not terminated with a newline. I want to concatenate them all, but add the missing newline between files. This works but takes ten times as much time as "cat foo.*". for i in foo.*; do cat "$i"; echo; done > out I can't really think of a fast yet simple solution. Ciao Dominik ^_^ ^_^ =2D- Dominik Vogt