小编Lin*_*00b的帖子

Bash 脚本 - 检查用户是否登录

我正在尝试编写一个脚本来检查用户(作为参数发送)是否已登录。如果用户已登录,我希望答案返回 0 到 shell,如果用户未登录,则返回 1 到 shell。

但我遇到了一些问题。每次我尝试运行脚本时,即使我发送用户作为参数,我都会收到消息“您需要输入用户”。

#!/bin/bash

function checkUser   
{
  status=0  

  for u in $(who | awk '{print $1}' | sort | uniq)
  do
    if [ "$u" = "$1" ]; then
      status=1
    fi
  done

  if [ "$status" = "1" ]; then
    echo "$user is logged in."
    exit 0
  else
    echo "$user is not logged in."
    exit 1
  fi
}
if [[ $1 -eq 0 ]] ; then
  echo 'You need to enter a user'
  read u
else
  user=$1 …
Run Code Online (Sandbox Code Playgroud)

linux bash shell ubuntu

1
推荐指数
1
解决办法
2万
查看次数

标签 统计

bash ×1

linux ×1

shell ×1

ubuntu ×1