5

Possible Duplicate:
What are the fundamental differences between the mainstream *NIX shells?

If I write a shell script in bash, will it run in ksh as well?

if not, what are the differences?

marked as duplicate by jasonwryan, Michael Mrozek Nov 2 '11 at 6:24

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

6

Depends on which specific commands/features you are using but generally no.

See http://en.wikipedia.org/wiki/Comparison_of_command_shells for a summary of differences between shells.

3

No. Both bash and ksh have custom specific extensions and behavior. If you want to write portable scripts, stick to POSIX syntax:

http://pubs.opengroup.org/onlinepubs/009695399/utilities/sh.html

http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html

2

It's best to treat each separate shell as a separate programming language. Don't try to write polyglot shell scripts, it makes them unreadable and clunky. Instead, learn how to program in one shell and then be careful with always specify that shell as the script's interpreter in the hashbang on the first line.

Remember that the shell that your script is running in has nothing to do with the shell you're executing it from. Hence, you might be interacting with your UNIX system through csh while at the same time be writing all your shell scripts for ksh.

  • Slightly surprised about the down-vote. Please explain? – Kusalananda Nov 23 '11 at 10:43

Not the answer you're looking for? Browse other questions tagged or ask your own question.