-
Notifications
You must be signed in to change notification settings - Fork 1.8k
SC2218
koalaman edited this page Jul 11, 2017
·
1 revision
#!/bin/sh
myfunction
myfunction() {
echo "Hello World"
}
#!/bin/sh
myfunction() {
echo "Hello World"
}
myfunction
You are calling a function that you are defining later in the file. The function definition must come first.
Function definitions are much like variable assignments, and define a name at the point the definition is "executed". This is why they must happen before their first use.
This is especially apparent when defining functions conditionally:
case "$(uname -s)" in
Linux) hi() { echo "Hello from Linux"; } ;;
Darwin) hi() { echo "Hello from macOS"; } ;;
*) hi() { echo "Hello from something else"; } ;;
esac
hi
None.