Demo image Demo image Demo image Demo image Demo image Demo image

How to write shell script

  • Wednesday, March 10, 2010
  • zana991
  • Following steps are required to write shell script:

    (1) Use any editor like vi or mcedit to write shell script.

    (2) After writing shell script set execute permission for your script as follows
    syntax:
    chmod permission your-script-name

    Examples:
    $ chmod +x your-script-name
    $ chmod 755 your-script-name

    Note: This will set read write execute(7) permission for owner, for group and other permission is read and execute only(5).

    (3) Execute your script as
    syntax:
    bash your-script-name
    sh your-script-name
    ./your-script-name

    Examples:
    $ bash bar
    $ sh bar
    $ ./bar

    NOTE In the last syntax ./ means current directory, But only . (dot) means execute given command file in current shell without starting the new copy of shell, The syntax for . (dot) command is as follows
    Syntax:
    . command-name

    Example:
    $ . foo

    Now you are ready to write first shell script that will print "Knowledge is Power" on screen. See the common vi command list , if you are new to vi.

    $ vi first
    #
    # My first shell script
    #
    clear
    echo "Knowledge is Power"

    After saving the above script, you can run the script as follows:
    $ ./first

    This will not run script since we have not set execute permission for our script first; to do this type command
    $ chmod 755 first
    $ ./first

    First screen will be clear, then Knowledge is Power is printed on screen.

    Script Command(s)
    Meaning
    $ vi first Start vi editor
    #
    # My first shell script
    #
    # followed by any text is considered as comment. Comment gives more information about script, logical explanation about shell script.
    Syntax:
    # comment-text
    clearclear the screen
    echo "Knowledge is Power"To print message or value of variables on screen, we use echo command, general form of echo command is as follows
    syntax:
    echo "Message"

    0 comments: