REDUX: How to overcome an incompatibility between the ksh on Linux vs. that installed on AIX/Solaris

Posted by Andrew Stein on Stack Overflow See other posts from Stack Overflow or by Andrew Stein
Published on 2008-09-18T19:39:45Z Indexed on 2010/04/26 7:03 UTC
Read the original article Hit count: 346

Filed under:
|
|
|
|

I have uncovered another problem in the effort that we are making to port several hundreds of ksh scripts from AIX, Solaris and HPUX to Linux. See here for the previous problem.

This code:

#!/bin/ksh
if [ -a k* ]; then
    echo "Oh yeah!"
else
    echo "No way!"
fi
exit 0

(when run in a directory with several files whose name starts with k) produces "Oh yeah!" when called with the AT&T ksh variants (ksh88 and ksh93). On the other hand it produces and error message followed by "No way!" on the other ksh variants (pdksh, MKS ksh and bash).

Again, my question are:

  • Is there an environment variable that will cause pdksh to behave like ksh93? Failing that:
  • Is there an option on pdksh to get the required behavior?

© Stack Overflow or respective owner

Related posts about linux

Related posts about solaris