#!/usr/bin/perl # user_monitor.pl v0.4 :: keep track on who's logged in # Written by Stephan Schmieder , 2003 # Usage: ./user-monitor.pl& use strict; use warnings; use diagnostics; use Net::SMTP; # my $smtp_server='localhost'; my $mail_to ='root'; my $mail_from ='root@localhost.localnet'; my $subject ='[localhost.localnet] user monitor'; # my @old_users=split(/\n/, qx/who/); while(sleep(1)) { my @users=split(/\n/, qx/who/); if(@users ne @old_users) { my $smtp = Net::SMTP->new($smtp_server); die "Couldn't connect to server" unless $smtp; $smtp->mail( $mail_from ); $smtp->to( $mail_to ); $smtp->data(); $smtp->datasend("Subject: $subject\n\n"); foreach my $user (@users) { $smtp->datasend("$user\n"); } $smtp->dataend(); $smtp->quit(); } @old_users=@users; }