www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/03/10/09:41:08

Date: Tue, 10 Mar 1998 08:39:14 -0600
From: jeffw AT darwin DOT sfbr DOT org (Jeff T. Williams)
Message-Id: <199803101439.IAA13211@kendall.>
To: eliz AT is DOT elta DOT co DOT il, eldredge AT ap DOT net
Subject: Re: true and false in bash scripts
Cc: djgpp AT delorie DOT com

> 
> `true' and `false' are not built-in commands in Bash, they are
> external commands.  You need to install Sh-utils (v2gnu/shl112b.zip)
> to have them.
> 

I had the Sh-utils already installed, so `true' and `false' were
available, but it did not occur to me that `true' and `false' might be
scripts themselves; I assumed they were executables.  And since they
specify "#!/bin/sh" and I had no such file or link, it is understandable
that they led to an error.

> > #!/djgpp/bin/bash
> 
> This is unnecessary: you can type the usual "#!/bin/sh" and it still
> will work (provided you have sh.exe which is a ``symlink'' to
> bash.exe).  The DJGPP port of Bash will look for `sh' along the PATH
> if it is not found in `\bin', and you gain portability in your
> scripts.
> 

Yes, I have done this now and it works nicely.  Thank you.  By the way
I also discovered that I cannot include a path with `ln -s', for example

	ln -s /djgpp/bin/bash.exe sh.exe

results in

C:/DJGPP/BIN/ln: cannot create symbolic link `sh.exe' to
`/djgpp/bin/bash.exe': Improper link (EXDEV)

Is this a bug or a feature?

jeff williams
jeffw AT darwin DOT sfbr DOT org

- Raw text -


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