| In the beginning, the magic number for Bourne shell scripts used to be a colon followed by a newline. Most Unices still support this, and will correctly pass a file with a single colon as its first line to `/bin/sh' for interpretation. Nobody uses this any more and I suspect some very new Unices may have forgotten about it entirely, so you should stick to the more usual `#! /bin/sh' syntax for your own scripts. You may occasionally come across a very old script that starts with a `:' though, and it is nice to know why! In addition, all known Bourne compatible shells have a builtin command, `:' which always returns success. It is equivalent to the system command
The
You may find very old shell scripts that are commented using `:' , or new scripts that exploit this behavior in some esoteric fashion. My advice is, don't: It will bite you later. |