From owner-freebsd-hackers@freebsd.org Mon Oct 22 12:30:51 2018 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 22101FFA730 for ; Mon, 22 Oct 2018 12:30:51 +0000 (UTC) (envelope-from yuripv@yuripv.net) Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B674477CC5 for ; Mon, 22 Oct 2018 12:30:50 +0000 (UTC) (envelope-from yuripv@yuripv.net) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id E357F2204E; Mon, 22 Oct 2018 08:30:43 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Mon, 22 Oct 2018 08:30:43 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yuripv.net; h= subject:to:references:from:message-id:date:mime-version :in-reply-to:content-type:content-transfer-encoding; s=fm3; bh=j INON/ybj6Rafll1/2sas9rL9HbbstWOxukJRlgy+7Q=; b=UiOCg495yR7V/N2oa NbVgtmbO1MHAradulHPg0Ts0eiH63fUcirLOIwo3ivjETD0Yox7j1WZq6ga2Auvl PWjRnyyMHLWpLKU+J6lMd/eyKUc8HfiHKvgQlx6am9PyLTLoEggT6V2Jx33xN4Ye ozrlDUS/pofnWOC1H9pWcZ2o04MugcWK+OC3G5DtYpKcC/2FRxtQMKteC+go5iwZ 49J35CLEs0OE/GzRTAm80PjVFut4gOWvQkSiY4D0JHOAUBQNf+cSsX6V3zowlspo 0P6JI9JXpVGGNptG9/xx+drvzI0PkerhM2Qmtzh6NnJpA1JGOlSyoJl213WvT/sk lQ23w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; bh=jINON/ybj6Rafll1/2sas9rL9HbbstWOxukJRlgy+ 7Q=; b=QSfle23hYd+uU9rotx4tPgqOJg6eLSaZkZLV8Zs4OXH1SGSlO+gP7z8Fe o5AHgjqvaZGk8jR5VroLXbaiFXuiptWeZFJwEvZlcJpfGtqvoNQ42P9adQiB81KW OxZ8G2kOo+u0KjyNsfr3RiW822ESmJOYyhmqfRGvKExibl1bv5SJhDNNQAWBItgz hwe15BhTbEw+NJoEr3BB14ZuIFCx28CV/jJlHEH6TYLhScBrv/KHGV8kfl6kWptm CjRoJJrItOH0gdDwysV2fcKcaV6J3JDmSZC4N3E/o8vPcjdg+9pX76Uw3xQRs3GN ETsd5lxqqZe+0HFw6l+TxNTf910MQ== X-ME-Sender: X-ME-Proxy: Received: from [192.168.1.2] (unknown [5.138.166.47]) by mail.messagingengine.com (Postfix) with ESMTPA id 0D33A102E4; Mon, 22 Oct 2018 08:30:41 -0400 (EDT) Subject: Re: shell read built-in To: Eugene Grosbein , Freebsd hackers list References: <2fff355e-a729-d5d3-8199-f2bbba80c112@grosbein.net> From: Yuri Pankov Openpgp: preference=signencrypt Autocrypt: addr=yuripv@yuripv.net; keydata= xsBNBFu8u6IBCADB11gP0QwnorrHjqAtKLHKHNHskhy0s7jqJKfx0YqXgVBKGLJ9/mjLAz0F CBNvemHSDDTs0mEZ9cBKKi6cmsav6+UQgr//yai6hvXLBJqKchSFO4MhmdvBtsGFq1yKz5Zi uhjmimKyIpgBgvMdbgGbGq6cnSB2uEPmZuJr419SVRODOkXukU+F5WHgaHzDdHAIu1asCt2B +6msxqIqlFWcXyZyTGicTGGvC/PFIsVRUtD1dIJANTC876g7DTb7LZXWiWwJpSJ4GKMXMHVX Ct9BoQ4i3nhKbOxb6Io1wsy+NFyWsTJ9KYrxKKPJP3oG8BWb/cqlFqnE4eNSsiq2q7krABEB AAHNH1l1cmkgUGFua292IDx5dXJpcHZAeXVyaXB2Lm5ldD7CwJcEEwEIAEECGwMFCQWjmoAF CwkIBwMFFQoJCAsFFgMCAQACHgECF4AWIQT4arc+w94tPi0v/3CTi+B/sSrhbAUCW708wAIZ AQAKCRCTi+B/sSrhbPxBB/961alcU091O+yKT5/oReHVc/PX0Tz4sW3V44AcgLfYlrZavCro EFz90qmCrl0xqEwuAKcC4bjmL8SjPWAhSN6IH9nxdw+HeZnAPiHm/q679Bu47+nHBl3qD/9p +t1PkKeKZfaWToFMt1nq06ytSu6VLMCwLdlDNe6DReX0ex/afEqKsuaIZSKL4UYjRwklp8PU Uf98QkrfapyHB67hQMzfI4tPeJaYyv0cTgfq3kUWJx1V6Xi0b6Zxj4ZrB2TXvaMO5g7yhU9E E3WWAvoe4FgB3a7dHe8atnHhq5+Cuvm6+LD4Jh7jvMAE5UMN+xxQpnGpNghHjaCy4vXrLRBZ nhRYzsBNBFu8u6IBCADKih3Q933rDNj4ZA8FhBQ2RlmBgvwOLcDPIL3h0V7h38y3+HisgFSc XACDsdrTlYZ1bRXkD9FHENynBcv0l/3uGJDk8jaGIDE0TP8OQBRp+IaU9/BHnAqrKxTJGIol Dahy2m+yx2yhdc6B4ujWMDqCF1rWOD+ymOWw+VLllOkrHcZa5PJtX9UOGbApZl8ZTM8El4CA NN8F1bg9MWzUi+8LYoGWGc+BwsFS1OUB1c4SPgMu5fD4Wfsr9yRl06fdpEA2YT7B/j5/5RSC 0sE2Zs/tmJ/JRflHJ12ycj59ma2xQMfEJF40hZDpMFQmZvbVqgEg3ocQcltjbxlIKZ/mjC4z ABEBAAHCwHwEGAEKACYWIQT4arc+w94tPi0v/3CTi+B/sSrhbAUCW7y7ogIbDAUJBaOagAAK CRCTi+B/sSrhbIDcCACqAZMcoxUBLZa40a5b24j5i1jplvCYYb3h+Q5lt5+BFJ87kCb4dJuU D3kh2i29BrxWQWa9WNue9ozxeYkbkfXubQYXexVolRsnh64OdGsE8KvorBFBB3zdK/GRt2Jy +jsnTfUWuQllbzMP0MfhCDMk1Mo8WvDH2/cOEP/yLKf20a+cd6nLs7bidjmGXo9pyuBKAtV6 Kv+VRu54AL+A/UBYu/eB3Dtvzcnut+1Zq6KaP++kUwPwINLIk04OBDwN0zRNTiqMAFYYyz2v ZHBB6E1th/l//ZC5b9Dk0ZpFI1bYdL9ymnrZe1MqbGPnDCToQxu00T/pZCm6Z92YrZQYuNwl Message-ID: <4ad1ea37-4714-a104-89a2-d7aef70d0f89@yuripv.net> Date: Mon, 22 Oct 2018 15:30:40 +0300 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 MIME-Version: 1.0 In-Reply-To: <2fff355e-a729-d5d3-8199-f2bbba80c112@grosbein.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Oct 2018 12:30:51 -0000 Eugene Grosbein wrote: > Hi! > > $ echo test | read line; echo $? > 0 > $ echo -n test | read line; echo $? > 1 > > Is it right behavior for /bin/sh? > This makes it hard for "while read line ... < file" > to process last line if it is not followed by new line character. POSIX defines the exit status for read as (and sh(1) says the same): The following exit values shall be returned: 0 Successful completion. >0 End-of-file was detected or an error occurred. ...and looks like all of /bin/sh, bash, ksh93 seem to agree on the behavior here.