用shell函数取不到返回值,为什么?
代码如下:     
 getPrevDate(){       
       #   Set   the   current   month   day   and   year.    
       month=`date   +%m`    
       day=`date   +%d`    
       year=`date   +%Y`            
       #   Add   0   to   month.   This   is   a    
       #   trick   to   make   month   an   unpadded   integer.    
       month=`expr   $month   +   0`            
       #   Subtract   $1   from   the   current   day.    
       day=`expr   $day   -   $1`            
       #   If   the   day   is   0   or   less   than   0   then   determine   the   last    
       #   day   of   the   previous   month.    
       if   [   $day   -eq   0   -o   $day   -lt   0   ];   then            
       #   Find   the   preivous   month.    
       month=`expr   $month   -   1`                  
 	      #   If   the   month   is   0   then   it   is   Dec   31   of    
 	      #   the   previous   year.    
 	      if   [   $month   -eq   0   ];   then    
 	            month=12    
 	            day=31    
 	            year=`expr   $year   -   1`           	       
 	      #   If   the   month   is   not   zero   we   need   to   find    
 	      #   the   last   day   of   the   month.    
 	      else    
 	            case   $month   in    
 	            1|3|5|7|8|10|12)   day=`expr   31   +   $day`;;    
 	            4|6|9|11)   day=`expr   30   +   $day`;;    
 	            2)    
 	                  if   [   `expr   $year   %   4`   -eq   0   ];   then    
 	                        if   [   `expr   $year   %   400`   -eq   0   ];   then    
 	                        day=`expr   29   +   $day`    
 	                        elif   [   `expr   $year   %   100`   -eq   0   ];   then    
 	                        day=`expr   28   +   $day`    
 	                        else    
 	                        day=`expr   29   +   $day`    
 	                        fi    
 	                  else    
 	                        day=`expr   28   +