X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=-3.0 required=5.0	tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
In-Reply-To: <CANs8wdChyOK7p9zph=g1_jVsNVvg9n+D+srPGJCNYs75=KNKuA@mail.gmail.com>
References: <loom.20120531T193933-322@post.gmane.org>	<CANs8wdBYOBGsmp2iFSSOOd5FZ4qb3i3a-E2EM8LBbPKz=su5Pg@mail.gmail.com>	<786EBDA1AC46254B813E200779E7AD36023A42C2@srv1163ex1.flightsafety.com>	<loom.20120531T211830-607@post.gmane.org>	<0105D5C1E0353146B1B222348B0411A20A770C827D@NIHMLBX02.nih.gov>	<CE9C056E12502146A72FD81290379E9A4360C73F@ENFIRHMBX1.datcon.co.uk>	<CANs8wdChyOK7p9zph=g1_jVsNVvg9n+D+srPGJCNYs75=KNKuA@mail.gmail.com>
Date: Fri, 1 Jun 2012 11:51:40 +0200
Message-ID: <CANs8wdCYg0iqpjh0GJ_gpTtQtw9kGi4wTMwyJ=PgsUAoAmJJsg@mail.gmail.com>
Subject: Re: Shell script loop runs out of memory
From: AZ 9901 <az9901@gmail.com>
To: cygwin@cygwin.com
Content-Type: text/plain; charset=UTF-8
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
Precedence: bulk
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie.com@cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id q519px4e011277

2012/6/1 AZ 9901:
> 2012/6/1 Adam Dinwoodie:
>> Buchbinder, Barry wrote:
>>> You might try changing
>>>     [[ condition ]]
>>> to
>>>     [ condition ]
>>> Perhaps single brackets use memory differently than double brackets.
>>
>> They do: [[ condition ]] is interpreted by the shell; [ condition ] forks to
>> call /usr/bin/[.exe. If forking is the problem, that'll make it worse.
>>
>
> So some things to avoid while (bash)scripting under Cygwin to limit
> BLODA effect :

- | : pipe stdout --> stdin
- $(...) : subshell fork
- `...` : same as before, subshell fork
- [ condition ] : prefer [[ condition ]] construction
- ( instructions ) : prefer { instructions } construction if possible
- anything else from your point of view ?

Ben

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


