Shell 编程(函数)

时间:2022-09-06 20:23:03

声明函数

demoFun(){
echo "这是我的第一个 shell 函数!"
}

函数名(){

  ...函数体

}

在Shell中,调用函数时可以向其传递参数。在函数体内部,通过 $n 的形式来获取参数的值,例如,$1表示第一个参数,$2表示第二个参数...

funWithParam(){
echo "第一个参数为 $1 !"
echo "第二个参数为 $2 !"
echo "第十个参数为 $10 !"
echo "第十个参数为 ${10} !"
echo "第十一个参数为 ${11} !"
echo "参数总数有 $# 个!"
echo "作为一个字符串输出所有参数 $* !"
}

函数调用

函数名 参数1 参数2

eg:输入一个IP地址最后一位起、始,自动找到该网段内有哪些主机地址在线

#!/bin/bash
#
CheckOnline() {
ADDR=$
if ping -c $ADDR &> /dev/null
then
return
else
return
fi
}
if [ "$1" -gt -a "$2" -gt -a "$1" -lt "$2" ] >/dev/null
then
for((i=$;i<$;i++))
do
if CheckOnline 192.168..$i
then
echo "192.168.1.$i is online"
fi
done
else
echo "参数不正确"
fi

总结

  判断变量是否为数值型的方法

## 方法1
#if [ "$1" -gt 0 ] 2>/dev/null ;then
# echo "$1 is number."
#else
# echo 'no.'
#fi ## 方法2,case
#case "$1" in
# [-][-]*)
# echo "$1 is number."
# ;;
# *)
# ;;
#esac ## 方法3,expr
expr $ "+" &> /dev/null
if [ $? -eq ];then
echo "$1 is number"
else
echo "$1 not number"
fi

Shell 编程(函数)的更多相关文章

  1. Shell 编程 函数

    本篇主要写一些shell脚本函数的使用. 函数调用 #!/bin/bash sum(){ s=`expr 2 + 3` echo $s } sum [root@localhost ~]# vim su ...

  2. Linux之shell编程函数使用

    linux shell 可以用户定义函数,然后在shell脚本中可以随便调用.下面说说它的定义方法,以及调用需要注意那些事项. 原文和作者一起讨论:http://www.cnblogs.com/int ...

  3. shell编程-函数(九)

    每种语言都有自己的函数,shell也不例外.支持函数,它可以将脚本程序划分成一个个相对独立的代码块,使代码的模块化,结构更加清晰,并有效地减少程序的代码量,提高代码的复用率. 函数格式 functio ...

  4. 2&period;shell编程-函数的高级用法

    2.1.函数的定义和使用 函数基本使用 [root@VM_0_9_centos ~]# test() > {} -bash: syntax error near unexpected token ...

  5. shell编程中的 三种结构&colon; 条件if&sol;选择结构case&sol;循环for&sol;while&sol;until等结构 和 函数的用法

    shell 函数的使用 (md中, 列表本身是有格式的, 他要产生缩进, 其次,列表项和列表项之间, 可以留有一个空行, 是合法的, 允许的) shell函数,就是 就相当于一个命令来看待和处理的, ...

  6. centos shell编程5 LANMP一键安装脚本 lamp sed lnmp 变量和字符串比较不能用-eq cat &gt&semi; &sol;usr&sol;local&sol;apache2&sol;htdocs&sol;index&period;php &lt&semi;&lt&semi;EOF重定向 shell的变量和函数命名不能有横杠 平台可以用arch命令,获取是i686还是x86&lowbar;64 curl 下载 第三十九节课

    centos shell编程5  LANMP一键安装脚本 lamp  sed  lnmp  变量和字符串比较不能用-eq  cat > /usr/local/apache2/htdocs/ind ...

  7. 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!

    http://blog.csdn.net/xiaominghimi/article/details/7603003 本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区 ...

  8. shell编程系列19--文本处理三剑客之awk中的字符串函数

    shell编程系列19--文本处理三剑客之awk中的字符串函数 字符串函数对照表(上) 函数名 解释 函数返回值 length(str) 计算字符串长度 整数长度值 index(str1,str2) ...

  9. shell编程系列6--shell中的函数

    shell编程系列6--shell中的函数 .函数介绍 linux shell中的函数和大多数编程语言中的函数一样 将相似的任务或者代码封装到函数中,供其他地方调用 语法格式 第一种格式 name() ...

  10. 【shell编程】之基础知识-函数

    linux shell 可以用户定义函数,然后在shell脚本中可以随便调用. shell中函数的定义格式如下: [ function ] funname [()] { action; [return ...

随机推荐

  1. yii2&period;0安装创建应用shiyong 归档文件安装

    环境是wamp在本机开发 http://www.yiiframework.com/download/ Install from an Archive File Download one of the ...

  2. DBCP、C3P0、Proxool 、 BoneCP开源连接池的比《转》

     简介   使用评价  项目主页  DBCP DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序用使用 可以设置最大和最小连接,连接等待时 ...

  3. 使用SignalR 提高B2C商城用户体验1

    vs2010 使用SignalR 提高B2C商城用户体验(一) 1.需求简介,做为新时代的b2c商城,没有即时通讯,怎么提供用户粘稠度,怎么增加销量,用户购物的第一习惯就是咨询,即时通讯,应运而生.这 ...

  4. Django的model中日期字段设置默认值的问题

    之前写过这样一个model: class MonthlyFeeMember(models.Model): worker = models.ForeignKey(Student, verbose_nam ...

  5. React Native之APK文件签名及打包

    生成apk签名文件 我们使用android studio的方式进行签名 AS工具栏找到并点击 build->gennrate signed apk 两种情况: 1.这里如果已经有签名文件了则直接 ...

  6. WebService调用&lpar;基于KSOAP2&rpar;

    public static boolean getData(String param) { //WebService服务器地址 String SERVICE_URL = "http://22 ...

  7. config&period;go

    package blog4go import ( "encoding/xml" "errors" "io/ioutil" "os& ...

  8. ssh整合,hibernate查询表数量count以及批处理添加

    String sql = "select count(*) from LogEntity as log "; Long count = (Long)getHibernateTemp ...

  9. pthon 反转嵌套的list

    def rev_recursive(li): try: iterator = iter(li) except TypeError: return li l = [] for item in itera ...

  10. Oracle 10g下emctl start dbconsole 报错:OC4J Configuration issue 问题解决

    http://blog.sina.com.cn/s/blog_95b5eb8c0100x4a7.html http://blog.csdn.net/sz_bdqn/article/details/17 ...