房地产行业网站建设报价方案,网站开发行业发展前景,怎么管理网站的内容吗,河南化工厂概述
return 返回 shell中通过return返回是有限制的#xff0c;必须是数字#xff0c;最大返回255#xff0c;超过255#xff0c;则从0开始计算。 通常仅返回0或1#xff1b;0表示成功#xff0c;1表示失败。通过echo 直接返回。 在没有return 语句#xff0c;函数将以…概述
return 返回 shell中通过return返回是有限制的必须是数字最大返回255超过255则从0开始计算。 通常仅返回0或10表示成功1表示失败。通过echo 直接返回。 在没有return 语句函数将以最后一条命令运行结果作为返回值。因此通常在最后一行以echo “xxx”语句作为返回值。 如果有多条echo则以最后一个echo为返回值。 通常用于返回数据比如一个字符串值或者列表值
1、返回值的方式
方法一return
方法二 echo
2、return和echo使用场景区别
(1).使用return返回值
使用return返回值只能返回1-255的整数
函数使用return返回值通常只是用来供其他地方调用获取状态因此通常仅返回0或10表示成功1表示失败
(2).使用echo返回值
使用echo可以返回任何字符串结果
通常用于返回数据比如一个字符串值或者列表值
3、场景示例 (一) return使用场景
函数通过return返回一个整数这种场景通常是用来做判断的也就是说在执行完函数之后需要根据它的返回值做判断通0表示成功非0都是表示失败。
#!/bin/bashthis_pid$$
# 判断nginx进程是否正在运行
function is_nginx_running
{ps -ef | grep nginx | grep -v grep | grep -v $this_pid /tmp/nullif [ $? -eq 0 ];then# return 0,也可以省略0直接return,两个是等价returnelsereturn 1fi
}
# return在函数中的返回值只是用来做状态判断的根据状态值做下一步判断
# 函数的返回值为0时表示nginx服务运行正常输出 后字符串否则返回 ||后字符串
is_nginx_running echo Nginx is running || echo Nginx is stoped# 运行脚本
~ % sh 29.echo_return_nginx.sh
Nginx is stoped
~ % sudo nginx # Mac 使用Linux为 systemctl start nginx
~ % sh 29.echo_return_nginx.sh
Nginx is running(二) echo使用场景
函数通过echo返回值通常是返回数据用的以供程序的其它地方使用。
#!/bin/bash# 获取整个Linux系统上所拥有的所有用户
function get_users
{# userscat /etc/passwd | cut -d: -f1 # linux使用# Mac 使用userscat /etc/passwd | tail -n11 | cut -d: -f1 | cut -d_ -f2echo $users #作为返回值
}# 执行该函数返回值为用户列表
# get_users# 遍历用户列表对用户名做处理
user_listget_users
index1
for user in $user_list
doecho This $index user is : $userindex$(($index1))
done# 运行脚本
~ % sh 30.echo_sys_user.sh
This 1 user is : nobody
This 2 user is : root
... ...
This 109 user is : oahd参考
Shell函数返回值