May 2018
Beginner
332 pages
7h 28m
English
Whenever we declare a variable in a script, it is accessible to all functions. The variable is global by default. If the variable is modified by any line of script or any function, it will be modified in global scope. This may create problems in certain situations. We will see this problem in the following script, function_12.sh:
#!/bin/bash
name="John"
hello()
{
name="Maya"
echo $name
}
echo $name # name contains John
hello # name contains Maya
echo $name # name contains Maya
Test the script as follows:
$ chmod +x function_12.sh
$ ./function_12.sh
This should produce the following output:
John
Maya
Maya
To make a variable local, we declare it as follows:
local var=value
local varName
Let's write ...