CentOS「linux」学习笔记26:shell编程系统函数和自定义函数

linux基础操作:主要介绍了shell编程系统函数和自定义函数。

1.系统函数

1.1.basename函数[返回后半部分,常用来获取文件或目录名,是系统内置的函数]

注意事项:basename 后面的实际上是字符串并不会读取目录和文件,即使输入的是不存在的路径信息也会正常返回。相当于截取特定的字符串。

例子1:basename /home/test/myshell.sh表示返回最后一个/后面的内容myshell.sh文件名称带扩展名。
例子2:basename /home/test表示返回最后一个/后面的内容test名称。
例子3:basename /home/test/myshell.sh .sh表示仅返回myshell部分不带扩展名。.sh会被过滤掉

1.2.dirname函数[返回前半部分,常用来获取文件或目录名,是系统内置的函数]

例子1:dirname /home/test/myshell.sh表示返回最后一个/前面的内容/home/test部分。
例子2:dirname /home/test/dir表示返回最后一个/前面的内容/home/test部分。
例子3:dirname myshell.sh表示返回myshell和sh之间的内容也就是只返回个 . 。

2.自定义函数

例子1:无参数无返回值函数。        
          function getSum(){            
                num=$[$n1+$n2]            
                echo $num        
             }        
        read -p "请输入n1的值:" n1        
        read -p "请输入n2的值:" n2        
        调用方式:getSum $n1 $n2
表示使用自己定义的getSum函数计算n1和n2变量里的值相加得结果。

例子2:简洁版函数        
        getSum(){            
             num=$[$n1+$n2]            
             echo $num        
        }        
        read -p "n1:" n1        
        read -p "n2:" n2        
调用方式:getSum $n1 $n2
表示使用自己定义的getSum函数计算n1和n2变量里的值相加得结果。
例子3:参数位传参数函数。        
           num=0        
           getSum(){          
           num=$[$1+$2]          
           return #表示返回函数的值。        
           }      
函数内部调用方式:getSum $1 $2;echo $num      
脚本执行传参数:./num.sh 10 20
表示执行脚本文件时使用参数位接收输入的值来计算n1和n2变量里的值相加得结果。

未经允许不得转载:谢雨尘安 » CentOS「linux」学习笔记26:shell编程系统函数和自定义函数

赞 (0) 打赏

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏