libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problems with test -L on Solaris


From: libtool
Subject: Re: Problems with test -L on Solaris
Date: Sun, 22 Apr 2001 20:23:43 -0500
User-agent: Mutt/1.1.12i

On Sun, Apr 22, 2001 at 08:05:38PM +0200, Peter Eisentraut wrote:
> Albert Chin-A-Young writes:
> 
> > > Try changing the code to look like this:
> > >
> > >     if test -L "$file" >/dev/null 2>&1 || test -h "$file" >/dev/null 2>&1 
> > > || test -f "$file"; then
> >
> > Well, examine the following:
> >   $ /bin/sh
> >   $ test -X "/etc/passwd" || echo foo
> >   test: argument expected
> >   $ test -L "/etc/passwd" || echo foo
> >   test: argument expected
> >
> > Because the "echo foo" never gets called, it doesn't matter what is
> > placed after ||.
> 
> That's a peculiar shell.  How about this:
> 
> if test -L "$file" >/dev/null 2>&1; then
>   :
> elif test -h "$file" >/dev/null 2>&1; then
>   :
> elif test -f "$file"; then
>   :
> elif ...

No. But this will work:
  if (test -L "$file") >/dev/null 2>&1 || \
  (test -h "$file") >/dev/null 2>&1 || \
  test -f "$file"; then

I've already tested it. I'll contribute the patch soon.

-- 
albert chin (address@hidden)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]