CSC231 Bash Tutorial 8

From dftwiki3
Revision as of 13:23, 1 November 2017 by Thiebaut (talk | contribs) (Bash Functions)
Jump to: navigation, search

--D. Thiebaut (talk) 13:13, 1 November 2017 (EDT)


Bash Functions


There are two ways of declaring functions in bash, illustrated in the code below:

#! /bin/bash
# func1.sh
# D. Thiebaut
# prints some messages

printSomething() {
    echo "Hello there!"
}

function printSomethingElse {
    echo "Hello again!"
}

printSomething
printSomething
printSomethingElse


  • Create the script above, make it executable, and run it, to see how it works.
  • Add a call to printSomething inside the printSomethingElse function, just to see if functions can actually call functions... Does bash accept nested calls?


Passing Arguments


  • Inside a function, $1 will refer to the first parameter passed to the function, $2 will refer to the second argument, etc.
  • Here is an example, with both style functions:


#! /bin/bash
# func1.sh
# D. Thiebaut

printBar() {
    echo "------------------------"
}

function printName {
    echo "Hello $1"
}

function printAge {
    echo "Your age: $1"
}


printBar
printName "Kathleen McCartney"
printAge  61
printBar