From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12399 invoked by alias); 29 Aug 2014 12:34:14 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: X-Seq: 19041 Received: (qmail 2027 invoked from network); 29 Aug 2014 12:34:01 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-0.4 required=5.0 tests=BAYES_00,HTML_IMAGE_ONLY_20, HTML_MESSAGE,RCVD_IN_DNSWL_NONE autolearn=no version=3.3.2 X-USANET-Received: from gwo2.mbox.net [127.0.0.1] by gwo2.mbox.net via mtad (C8.MAIN.3.82G) with ESMTP id 689sHCmyQ2096Mo2; Fri, 29 Aug 2014 12:24:42 -0000 X-USANET-Routed: 5 gwsout-gwsd Q:gwsd X-USANET-Routed: 3 gwsout-vs Q:bmvirus X-USANET-GWS2-Service: gwsdout-encrypt True X-USANET-GWS2-Tenant: recommind.com X-USANET-GWS2-Tagid: P8SH X-USANET-Source: 165.212.120.254 OUT dirk.heinrichs@recommind.com S1P5HUB6.EXCHPROD.USA.NET TLS X-USANET-MsgId: XID407sHCmyQ7008Xo2 Message-ID: <54007106.3010305@recommind.com> Date: Fri, 29 Aug 2014 14:24:38 +0200 From: Dirk Heinrichs User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.0 MIME-Version: 1.0 To: Subject: Re: cat as a builtin command References: In-Reply-To: Content-Type: multipart/alternative; boundary="------------050204030200060007040101" X-Originating-IP: [80.237.179.180] --------------050204030200060007040101 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Am 29.08.2014 um 03:40 schrieb Izumi Natsuka: > Hello, I'm going to write a shell function that provides a basic > functionality(print the content of a file or stdin) of cat[0], in > order to avoid forking too many process when I call it in a loop[1]. I try to avoid cat alltogether, as many uses belong to the "Useless use of cat" category, like this one: > > $ cat archlinux-2012.09.07-dual.iso | wc -c > 39 Could also be "wc -c archlinux-2012.09.07-dual.iso". Results in mostly cat-free shell scripts (I like dog(s) more, anyway ;-) ) HTH... Dirk -- *Dirk Heinrichs*, Senior Systems Engineer, Engineering Solutions *Recommind GmbH*, Von-Liebig-Straße 1, 53359 Rheinbach *Tel*: +49 2226 1596666 (Ansage) 1149 *Email*: dhs@recommind.com *Skype*: dirk.heinrichs.recommind www.recommind.com --------------050204030200060007040101 Content-Type: multipart/related; boundary="------------020903010606080204030107" --------------020903010606080204030107 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: 8bit
Am 29.08.2014 um 03:40 schrieb Izumi Natsuka:

Hello, I'm going to write a shell function that provides a basic functionality(print the content of a file or stdin) of cat[0], in order to avoid forking too many process when I call it in a loop[1].

I try to avoid cat alltogether, as many uses belong to the "Useless use of cat" category, like this one:


$ cat archlinux-2012.09.07-dual.iso | wc -c
39

Could also be "wc -c archlinux-2012.09.07-dual.iso".

Results in mostly cat-free shell scripts (I like dog(s) more, anyway ;-) )

HTH...

    Dirk
--

Dirk Heinrichs, Senior Systems Engineer, Engineering Solutions
Recommind GmbH, Von-Liebig-Straße 1, 53359 Rheinbach
Tel: +49 2226 1596666 (Ansage) 1149
Email: dhs@recommind.com
Skype: dirk.heinrichs.recommind
www.recommind.com
--------------020903010606080204030107 Content-Type: image/gif; name="Logo.gif" Content-Transfer-Encoding: base64 Content-ID: Content-Disposition: inline; filename="Logo.gif" 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 --------------020903010606080204030107-- --------------050204030200060007040101--