Цикл For для обработки списка всех учащихся и их онлайн-статуса

#linux #bash #for-loop

#linux #bash #цикл for

Вопрос:

Я пытаюсь написать «цикл for» (должен выполняться как цикл for), который использует префикс переменной, содержащий идентификатор класса, который будет обрабатывать всех учащихся, соответствующих идентификатору и указывающих, находятся ли они в Сети.

 for i in $prefix
do
name=$(grep $i /etc/passwd | cut -d ':' -f5)
echo -u |grep  "$i"  || test amp;amp; echo "$name is Online"  || echo "$name is 
Offline"
done
 

Результат, который я получаю,

  John Doe
 Jane Smith
 Ravey Smith is currently offfline
 

Результат, который мне нужно получить, это

 John Doe is online
Jane Smith is offline
Ravey Smith is online
 

Комментарии:

1. for i in $name; do....

2. Вы можете использовать эту строку кода: who|grep $name > /dev/null amp;amp; echo "$name is online" || echo "$name is offline"

3. когда я выполняю echo -u приказ , я возвращаюсь -u . Не уверен, чего вы пытаетесь добиться echo -u |grep "$i" . Удачи вам!