views:

45

answers:

2
A: 

You've found a bug in ksh, and only the authors thereof, or someone with access to the source, can explain it to you. Real ksh didn't used to be open source, but perhaps that's changed.

bmargulies
+1  A: 

Calls to functions in shells such as ksh don't use parentheses. They are only used during function definition.

Correct:

doOutput(){
  Echo "Something"
}

doOutput

If you call a function with parameters, you separate them using spaces (no parentheses):

doOutput(){
  Echo "$1 and then $2"
}

doOutput go stop

Incorrect:

doOutput(){
  Echo "Something"
}

doOutput()

Plus, why are you redirecting stdout to stdout (>&1)?

Dennis Williamson
Because I wasn't getting output, and I wasn't sure why. Thanks, stupid syntax error.
C. Ross