Exactly how are you running that script? Are you starting it from a command prompt, and if so, how are you starting it? There are various ways of starting a script where a different stdin that what you might expect is supplied, which could account for this behavior.
Thanks for your reply.
I keep on waiting for your reply.
Well, I just tried running from ksh shell too. I got the same issue.
This is what I did, I typed `which $SHELL` that returned me /bin/sh which means it's bash.
On my old shell I typed "ksh".
And then tried to execute the same script.
Now the point is, even if I typed ksh and the shell changed, but when I tried to run `which $SHELL` that returned me the same /bin/sh.
Do I have to set some path or something to point to ksh shell.