Science Fair Projects Ideas - Shebang

All Science Fair Projects

      

Science Fair Project Encyclopedia for Schools!

  Search    Browse    Forum  Coach    Links    Editor    Help    Tell-a-Friend    Encyclopedia    Dictionary     

Science Fair Project Encyclopedia

For information on any area of science that interests you,
enter a keyword (eg. scientific method, molecule, cloud, carbohydrate etc.).
Or else, you can start by choosing any of the categories below.

Shebang

In computing, a shebang is a special line that begins an executable text file (commonly called a script) causing Unix-like operating systems to execute the commands in the text file using a specific interpreter (program).

A shebang consists of a number sign and an exclamation point character (so "#!") in the first two columns of the first line, followed by the path to the interpreter program that will provide the interpretation. The name shebang comes from an inexact contraction of sharp bang or haSH bang, referring to the two typical Unix names of the two characters. (Unix jargon uses sharp or hash to refer to the number sign character and bang to refer to the exclamation point, hence shebang.) Because the "#" character is used as the comment marker in these executable text files, the actual contents of the shebang line will be ignored by the interpreter; the shebang line only exists to specify the correct interpreter to be used.

The shebang is actually a human-readable instance of a magic number in the executable file (with shebang equalling the magic number 0x2321). Executable files that do not require an interpreter program start with other magic combinations. (See File format for more details of magic numbers.)

Some typical shebang lines:

  • #!/bin/sh -- Execute using sh program in the /bin/ directory, the Bourne shell
  • #!/bin/csh -- Execute using csh, the C shell instead
  • #!/bin/perl -- Execute using Perl

Shebang lines can also include specific options that will be passed to the interpreter; see the examples below. However, implementations differ widely on how options are parsed.

It is common for different variants of even the same operating system to have different locations for the desired interpreter. In the absence of a rigidly standardised filesystem structure among different Unix systems, this method can also limit the portability of the file. Thus, it is not uncommon to need to edit the shebang line after copying a script from one computer to another because the path that was coded into the script may not apply on a new machine. For this and other reasons, POSIX does not standardize the feature.

Example shebang lines

This file is a bash script, the Unix equivalent of a DOS batch file:

#!/bin/bash
#
# The rest of the bash script
...


This file is a Perl script, to be run with 'warnings' enabled (-w):

#!/usr/bin/perl -w
#
# The rest of the Perl script
...


This file is also a Perl script but it assumes that the Perl interpreter is in a different place. Also, the Perl interpreter is run without extra warnings being enabled.

#!/usr/local/bin/perl
#
# The rest of the Perl script
...

Sometimes, the exact path to the required interpreter is not known, so the env program can be used instead to search for it.

#!/usr/bin/env python
#
# The rest of the Python script
...

External links

12-03-2008 10:22:39
The contents of this article is licensed from www.wikipedia.org under the GNU Free Documentation License. Click here to see the transparent copy and copyright details
Science kits, science lessons, science toys, maths toys, hobby kits, science games and books - these are some of many products that can help give your kid an edge in their science fair projects, and develop a tremendous interest in the study of science. When shopping for a science kit or other supplies, make sure that you carefully review the features and quality of the products. Compare prices by going to several online stores. Read product reviews online or refer to magazines.

Start by looking for your science kit review or science toy review. Compare prices but remember, Price $ is not everything. Quality does matter.
Science Fair Coach
What do science fair judges look out for?
ScienceHound
Science Fair Projects for students of all ages
All Science Fair Projects.com Site
All Science Fair Projects Homepage
Search | Browse | Links | From-our-Editor | Books | Help | Contact | Privacy | Disclaimer | Copyright Notice