linux shell函数
shell和函数的定义
1. linux shell 函数
将一组命令集或语句形成一个可用的块, 这些语句块称为函数。
2. shell 函数的组成
函数名:函数名字,注意一个脚本中函数名要唯一,否则会引起调用函数紊乱。
函数体: 函数内部命令的集合,实现一个业务的功能。
3. shell 函数定义的格式
function 函数名() # function可以省略,注意()内部不带任何参数。 { 命令1 命令2 . . . }
函数使用方法举例
1.函数定义及引用实例一: 最简单的定义及引用
[liu@WLJY01 myscript]$ sh func_1.sh 演练函数的定义及引用方法: welcome,now time is Wed Aug 12 16:01:58 CST 2015
实际环境操作:
执行结果:
2.函数定义及引用实例二:向函数传递参数演练
向函数传递参数就像在一般脚本中使用特殊变量$ 1 , $ 2 . . . $ 9一样,函数取得所传参数后,最好先在函数内重新设置变量保存所传的参数。
程序功能:向函数传递一个变量值,对该变量值进行相关的运算,并输出结果。
[liu@WLJY01 myscript]$ sh func_2.sh 演练函数内参数的传递的方法(注意变量的接收方法) 符合函数要求的参数个数 10+90=100
实际环境操作:
执行结果:
3. 函数文件和脚本文件不在同一个文件中,如何调用该函数?
程序功能:输入一个文件的路径,然后打印出这个文件的MD5摘要信息。
[liutaostdio@WLJY01 myscript]$ cat func_3.sh # 函数文件 [liutaostdio@WLJY01 myscript]$ sh func_call.sh # 脚本文件 请输入一个文件名:test1.sh test1.sh 的md5摘要为:5615ac3ce36ec58748a80649c3599d88 test1.sh 请输入一个文件名:test2.sh test2.sh 的md5摘要为:4446b536dff610ea440663147914c52b test2.sh 请输入一个文件名:ttt.sh ttt.sh 的md5摘要为:5615ac3ce36ec58748a80649c3599d88 ttt.sh 注意函数导入的方法: . 空格符 文件名
实际环境操作:
执行结果:
课后作业
1.掌握shell 函数的定义;
2.掌握向函数中传递参数的方法;
3.如何引用一个外部函数,并调用该函数;
4.编写一个函数,统计一个文件的所有行数,并编写脚本,依次打印/var/log/httpd_log下所有日志文件的行数。
【本文由麦子学院独家原创,转载请注明出处并保留原文链接】