delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/08/29/17:16:47

X-Spam-Check-By: sourceware.org
Message-ID: <44F4AEB3.7769D22D@dessent.net>
Date: Tue, 29 Aug 2006 14:16:35 -0700
From: Brian Dessent <brian AT dessent DOT net>
X-Mailer: Mozilla 4.79 [en] (Windows NT 5.0; U)
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: Problem when using variable assignment, backticks in shell script
References: <017630AA6DF2DF4EBC1DD4454F8EE29708D75075 AT rsana-ex-hq1 DOT NA DOT RSA DOT NET>
X-IsSubscribed: yes
Reply-To: cygwin AT cygwin DOT com
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

"Silva, Russell" wrote:

>   x=`/usr/bin/cat < temp`;

I don't know what is causing your problem.  I ran your testcase several
times and never saw a failure, but from your description it seems like
it's the kind of thing that might occur very rarely.

My only suggestion is that if your true desire is to actually read the
contents of a file into a variable, then the above construct is a fairly
expensive way of doing it.  This requires a fork/exec (an operation
which is extremely slow under cygwin) of /bin/cat, whose purpose is only
to read from one fd and write to another.  If you can live with a
bash-specific (?) construct, then x=$(< temp) should cause the same
effect but much more efficiently, as the shell itself just reads the
file without invoking any subprocesses.

Brian

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019