Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <41FDEE90.54847D1A@dessent.net> Date: Mon, 31 Jan 2005 00:38:40 -0800 From: Brian Dessent Organization: My own little world... MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Unable to properly execute a let statement from a shell script References: <00b201c50767$a507e0b0$f968dc54 AT I2 DOT COM> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Reply-To: cygwin AT cygwin DOT com Paolo Gesmundo wrote: > I know that I could modify a.sh by adding #!/bin/bash > at the top of the file but I would need to avoid this > otherwise I have to modify too many scripts > > Is there a way to run a.sh like in Case 1 and get the > proper result like in Case 2? It sounds like your scripts are banking on the assumption that under linux, sh=bash, whereas on Cygwin sh=ash. So, you can't get away with using bash-isms in scripts without shebangs because you are relying on a specific quirk of linux. If you require bash-specific features you need to either call bash explicitly in the shebang or exec the script from bash. Otherwise your script is not going to be portable on any system other than linux. bash != sh. 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/