1,105,633 Community Members

script to check if user logged in

Member Avatar
xxyuri
Newbie Poster
3 posts since Apr 2011
Reputation Points: 0 [?]
Q&As Helped to Solve: 0 [?]
Skill Endorsements: 0 [?]
 
0
 

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
Member Avatar
chaosless
Newbie Poster
3 posts since Jan 2010
Reputation Points: 0 [?]
Q&As Helped to Solve: 1 [?]
Skill Endorsements: 0 [?]
 
1
 

probably something like

#!/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
Member Avatar
xxyuri
Newbie Poster
3 posts since Apr 2011
Reputation Points: 0 [?]
Q&As Helped to Solve: 0 [?]
Skill Endorsements: 0 [?]
 
0
 

Thank you,Chaosless ,script working perfecly and very neat

Question Answered as of 3 Years Ago by chaosless
You
This question has already been solved: Start a new discussion instead
Post:
Start New Discussion
View similar articles that have also been tagged: