Script de shell ------------- Compruebe periódicamente si el usuario especificado inicia sesión en el sistema

Requerimientos del proyecto:

Compruebe si el usuario especificado está conectado al sistema cada 5 minutos. El nombre de usuario se ingresa desde la línea de comando. Si el usuario especificado está conectado, se muestra la información relevante.

Análisis de pasos:

  1. Cada 5 minutos, puede usar tareas programadas o hacer bucles sin fin
  2. De acuerdo con las necesidades del proyecto, el nombre de usuario y el nombre de usuario deben ingresarse desde el comando, lo que significa interactuar con el usuario. Si la interacción es una vez cada 5 minutos, es demasiado problemático, por lo que un bucle sin fin es más adecuado y solo es necesario interactuar una vez.

Implementación de script:

#!/bin/bash
read -p "请输入用户名:" user
while :
do
        if who |grep -qw $user
        then
                echo $user login
        else
                echo $user not login
        fi
        sleep 30
done

Nota:
Antes de que se implemente el bucle infinito en while, deje que el usuario ingrese el nombre de usuario primero. Si está en el bucle, es un poco irrazonable ingresar el nombre de usuario cada 5 minutos.
quién: puede ver la lista de nombres de usuarios que están conectados actualmente al sistema.
grep -w puede hacer coincidir a los usuarios con mayor precisión

Supongo que te gusta

Origin blog.csdn.net/weixin_48190875/article/details/108245125
Recomendado
Clasificación