script to specify the name of the user to be checked, the frequency in seconds at which the script should check. If a checking frequency is not specified, it should default to 60 seconds
So far I have got
frequency=$0
user=$1
#!/bin/sh
while [ $* -gt 60 ]
do
who|grep $1 > /dev/null
if [ $? -z 0 ]
then
echo "users $1 is logged"
break;
else
echo "waiting"
sleep 10
fi
2
Contributors
2
Replies
1 Week
Discussion Span
2 Years Ago
Last Updated
5
Views
Question Answered
Related Article:For loop problems ...hel me
is a Shell Scripting discussion thread by bossman5000 that has 1 reply, was last updated 1 year ago and has been tagged with the keywords: loop, problem, script, shell, unix.
#!/bin/sh
if [ $# -eq 0 ]; then
echo "usage: waiton <user> <frequency>"
exit 0
fi
user=$1
frequency=$2
if [ -z "${frequency}" ]; then
frequency=60
fi
while $(true); do
count=$(who | grep ${user} | wc -l)
if [ ${count} -gt 0 ]; then
echo "user ${user} is logged on ${count} times"
exit 0
fi
echo "waiting for ${user}"
sleep ${frequency}
done