delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/08/22/13:33:58

X-Spam-Check-By: sourceware.org
To: cygwin AT cygwin DOT com
From: mwoehlke <mwoehlke AT tibco DOT com>
Subject: Re: Looking for mkdirhier !
Date: Tue, 22 Aug 2006 12:32:45 -0500
Lines: 33
Message-ID: <ecff3t$66f$1@sea.gmane.org>
References: <ecf9gi$eo1$1 AT sea DOT gmane DOT org> <013401c6c60f$44ed2880$a501a8c0 AT CAM DOT ARTIMI DOT COM>
Mime-Version: 1.0
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.5) Gecko/20060719 Thunderbird/1.5.0.5 Mnenhy/0.7.4.0
In-Reply-To: <013401c6c60f$44ed2880$a501a8c0@CAM.ARTIMI.COM>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
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

Dave Korn wrote:
> On 22 August 2006 16:57, mwoehlke wrote:
>> Dave Korn wrote:
>>> On 22 August 2006 07:50, Guillaume MARTIN wrote:
>>>> How could I install mkdir in cygwin ?
>>> dk AT rainbow /tmp> alias mkdirhier='mkdir -p'
>> ...but you would have to set that alias in whatever this script is...
>> Better:
>>
>> $ cat > /bin/mkdirhier
>> mkdir -p "$@"
>> ^D
>> $ chmod +x /bin/mkdirhier
>>
>> (Note: ^D above means hold 'ctrl' and press 'D')
> 
>   Would be even better if you put a shebang on the first line, in case it's
> invoked from a non-bash shell.

Actually, I intentionally did not use a shebang... 'mkdir -p "$@"' 
should work on any Bourne-like shell, although in this case '#!/bin/sh' 
should suffice.

I'm used to writing portable scripts; anything other than '#!/bin/sh' is 
very non-portable, and if the script needs to be run on Bourne+ (i.e. 
bash or ksh), then the only options are a: try to write a wrapper that 
invokes the script in bash/ksh as a here-doc (or something equally 
ugly), or b: don't use a shebang. I generally pick the latter.

-- 
Matthew
'$ time make world' -> real 5d:14h:37m:5.291s  user 0m:0.000s  sys 
4d:2h:14m:43.712s


--
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