Functions are set of statements which is invoked whenever it is required. In the below example, I am defining 3 functions and invoking the...
Functions are set of statements which is invoked whenever it is required. In the below example, I am defining 3 functions and invoking them as per the user's choice.
changeHomedir() {
echo "I am changing the directory to /home/vagrant"
cd /home/vagrant
pwd
}
finduser() {
var1=`whoami`
echo "You are currently logged in by $var1"
}
patchprocess(){
echo "This is patch process"
}
choice="Y"
while [ $choice == "Y" ]
do
echo "1 Change the directory"
echo "2 Find the logged in user"
echo "3 Path process"
echo "4 Exit"
echo "Enter your choice"
read choice1
case $choice1 in
1)
changeHomedir
;;
2)
finduser
;;
3)
patchprocess
;;
*)
choice="N"
esac
done
Function with parameter
We can pass the parameters to the funciton which is represented by $n where n is the argument number.
Example
executecmd() {
echo "Executing $1 commad"
$1
}
executecmd $1
In this example $1 which is in the executecmd definition is first parameter of function whereas execute $1 statement $1 is the command line argument
Execute
./func1.sh pwd
Example
Function with parameter and return a value
func1(){
echo "-------------- $1 process $2---------"
}
func2(){
var1=`cat $1 | wc -l`
return $var1
}
func1 "pwd" "starting"
pwd
func1 "pwd" "ending"
func1 "$1" "starting"
$1
func1 "$1" "ending"
func2 $2
echo $?
Execute
./fun1.sh whoami fun1.sh
sir can we add or execute another shellscript file inside a shellscript?
ReplyDelete