On Wed, Dec 12, 2007 at 02:18:47AM +0100, Vincent Lefevre wrote:
> According to POSIX[*], "test \( ! -e \)" is a 4-argument test and is
> here equivalent to "test ! -e". But dash (like ksh93 and bash) yields
> an error:
> 
> $ test \( ! -e \) || echo $?
> test: 1: closing paren expected
> 2
> $ test ! -e || echo $?
> 1

Hi Vincent,

the -e switch to test takes an argument, a pathname.  If you don't
supply the pathname, the test builtin with take the \) as pathname, and
complains about the missing closing parenthesis, which seems quite
right.  I don't see a bug here.

 $ dash -c 'test \( ! -e "" \); echo $?'

works just fine.

HTH, Gerrit.



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to