该脚本实现功能为:判断Linux用户是否在线,任意输入一个用户即可
#!/bin/bash
#注意几点:函数的定义中,括号里面不能写任何东西(第一行);函数必须定义在调用之前; 给函数传参的时候,传递的参数在函数的定义里用$n 来表示第 n 个参数。$?代表函数调用 的返回值。
check_user()
{
# 若函数的第一个参数$1 为“quit”,则立即结束脚本
if [ $1 = "q" ] #判断字符串用= ,数值用-eq =两边要加空格
then
exit
fi
USER=`who | grep $1 | wc -l` #在命令who的输出里边查找传进来的用户名参数,并统计有几行
if [ $USER -eq 0 ]
then
return 0
else
return 1
fi
}
while true
do
echo -n "please input a user:"
read user #从键盘读入数据
check_user $user # 调用 check_user,并传递参数$user
if [ $? -eq 0 ] # 判断 check_user 的返回值$?是否为 0
then
echo "[$user] offline!"
else
echo "[$user] online!"
fi
done