linux中的加法函数,Linux进阶之bash编程(函数及总结)

1:bash函数的定义格式

[ function ] funname [()]

{

action;

[return int;]

}

说明:

1:可以带function fun() 定义,也可以直接fun() 定义,不带任何参数。

2:函数返回值,可以带有return来返回;如果没有,则用函数体最后一行的执行结果,作为返回值。return后跟0-255数值。在调用函数后,通过$?来获得返回值;

3:参数传递,调用函数时,可以往里面传递参数,$n($1,$2...)获取参数值。

2:实战练习设计一个函数,实现加法运算。

#!/bin/bash

funWithReturn(){

echo "a+b=?"

echo -n "a="

read a

echo -n "b="

read b

echo -n "$a+$b="

return $(($a+$b))

}

#函数调用

funWithReturn

#获取函数执行结果返回值

echo "$?"

脚本执行:

[craft@vp143 shell]$ bash add.sh

a+b=?

a=3

b=4

3+4=7

注:这里实现两个变量的加法,实现方式:$(($a+$b)),$[a+b],`expr $a + $b`,或者$(expr $a + $b)

3.bash编程回顾

特殊的变量:

$0:脚本名字。此变量包含地址,可以使用basename

$0获得脚本名称。

$1:第一个参数

$2,$3,$4,$5,...一次类推。

$# 传递到脚本的参数个数

$*

以一个单字符串显示所有向脚本传递的参数,,以("$1 $2...")

$$ 脚本运行的ID号

$! 后台运行的最后一个进程的ID号

$@

与$*相同,但是使用时加引号,并在引号中返回每个参数。("$1""$2"...)

$- 显示shell使用的当前选项。

$?

显示最后命令的推出状况。0表示没有错误。

逻辑运算符

对应操作 整数 字符串

相同 -eq =

不同 -ne !=

大于 -gt >

小于 -lt

<

大于或等于 -ge

小于或等于 -le

为空 -z

不为空 -n

文件操作逻辑运算符:

-d file ----当file是一个目录时,返回 True

-f file

----当file是一个普通文件时,返回 True

-r file ----当file是一个只读文件时,返回 True

-s file

----当file文件长度大于0时,返回 True

-w file ----当file是一个可写文件时,返回 True

-x "/bin/ls"

----当/bin/ls是一个可执行文件时,返回 True,目录是否可访问

-e file ----当file存在时,返回True

-o file

----当file文件的所有者是当前用户时,返回True

-z file ----当file长度为0时,返回True

-u -----文件的

UID 标志被设置

-G -----文件的组 ID 和当前用户相同

file1 -nt file2 -----文件 file1 比 file2

更新

file1 -ot file2 -----文件 file1 比 file2 更老

4:bash调试

在编程过程中难免会出错,有的时候,调试程序比编写程序花费的时间还要多,Shell程序同样如此。

Shell程序的调试主要是利用bash命令解释程序的选择项。

调用bash的形式是:

bash

-选择项Shell程序文件名几个常用的选择项是:

-e 如果一个命令失败就立即退出。

-n 读入命令但是不执行它们。

-u

置换时把未设置的变量看做出错。

-v 当读入Shell输入行时把它们显示出来。

-x 执行命令时把命令和它们的参数显示出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值