I am trying to source specific function of a bash file. Please find below simplified loadfun.sh :-
function a(){
        echo "This is a"
}
function b(){
        echo "This is b"
}
function load(){
        echo "exporting $1"
        export -f $1
}
$@
Also, please find below execution sequence of commands :-
$cat loadfun.sh                             
function a(){                               
        echo "This is a"                    
}                                           
function b(){                               
        echo "This is b"                    
}                                           
function load(){                            
        echo "exporting $1"                 
        export -f $1                        
}                                           
$@                                          
$                                           
$                                           
$                                           
$sh loadfun.sh a                            
This is a                                   
$                                           
$                                           
$a                                          
bash: a: command not found                  
$                                           
$                                           
$sh loadfun.sh load a                       
exporting a                                 
$                                           
$                                           
$                                           
$a                                          
bash: a: command not found                  
$                                           
I am not sure why
export -f a
is not exporting function a.
 
     
    