Sponsored Content
Top Forums Shell Programming and Scripting Bourne Shell script - log for users loggin on and off Post 302088028 by noodlesoup on Friday 8th of September 2006 05:27:45 AM
Old 09-08-2006
Bourne Shell script - log for users logging on and off

Hello all, I'm new to shell scripting and want to make a script that I can write to log the users logging on and off the a unix system.

I have had a good look over the past few days to crack it, I think I am getting close.

I want a script that runs an infinite loop to check every 5 seconds to report on who logs into and who logs out of the unix system.

This is a example of the output I would like:

PHP Code:
The current users are:
abc1
rv0
sxu
tgray

No user has logged in
/out in the last 5 seconds.

No user has logged in/out in the last 5 seconds.

User rsmith has logged in.

No user has logged in/out in the last 5 seconds.

User abc1 has logged out.

No user has logged in/out in the last 5 seconds
I am using
who | awk '{print $1}' | sort > temp1
to get the users logged on and saving that into a temp file.

and have a while loop set up like this which will run each 5 seconds.

while true
do
.
.
.
.
.
sleep 5
done

The problem I'm having is, I can't work out how to compare the current users logged in to the users that have previously logged in.

I thought of making a second temp file that stores the current users then using:
cmp temp1 temp2
to look at the difference. problem is it gives me an output saying "file differs at character 42, line 6" and that isn't helping me much as I would like to then display that users name but not sure how to print that position in the file (or just a line for that matter).

The test to see if the user has logged on or off is easy, as it is only a couple of if statements.

like if user is in temp1 but not in temp2 then the user has logged out and vice versa.

I have been looking at this for a while now and am going around in circles. any code fragments, help or written shell scripts Smilie would be greatly appreciated.

Thanks in advance

Noodle

Last edited by noodlesoup; 09-08-2006 at 06:34 AM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Bourne shell script need help please ?

i have this assignment.. and i mad this script but there is something wrong with it.. if anyone can tell me.. watz going on... i would appreciate it.. tHnX in advance.. count=1 val=$2 op=$1 ans=0 if then if then while do ... (7 Replies)
Discussion started by: dezithug
7 Replies

2. Shell Programming and Scripting

bourne shell script

Hi all, Can somebody answer the following query Thanks, Srinivas A shell program that takes one or any number of file directory names as input; sorts the directories given as parameters jointly in the ascending or decending order of choice For EX : dips abc etc desc will sort the files... (2 Replies)
Discussion started by: psrinivas
2 Replies

3. UNIX for Dummies Questions & Answers

Bourne Shell Script

Hello, I'm throwing this out there as a novice to the Unix world...I've been working on a project that requires me to ouput (using the echo command) a list of names in a single column format, but the problem is the input is in row format followed by a blank space...If anyone could give me a... (2 Replies)
Discussion started by: dmhonor914
2 Replies

4. Shell Programming and Scripting

cd from a Bourne Shell Script - Please Help

Dear Bourne Shell Expert, I am trying to change the current working directory from within a Bourne Shell script. Simply enough i thought ! As I am sure you are well aware, Inside the script i echo `pwd` and it seems ok, but the shell spawns another shell to execute this and as such, when my... (10 Replies)
Discussion started by: fawqati
10 Replies

5. Shell Programming and Scripting

how to log if the program contains both bourne-shell & pearl scripts

I have a program (say, MyProgram) written in Bourne-shell script, but at some point it calls another script written in pearl, as illustrated below: #!/bin/sh ..... case $x in 1) ConfigSystem1 ( b-shell script) 2) ConfigSystem2 ( pl) 3) ConfigSystem3 (b-shell) .... Then I create... (0 Replies)
Discussion started by: bluemoon1
0 Replies

6. Shell Programming and Scripting

loggin in using different user from with in the shell script

Hi, I want to login using different login credentials from with in the shell script. I need to do this so that I can run a second script which can be run using only by that user. eg. #!/bin/bash #login using new user username: password: sh script.bash #logout above... (2 Replies)
Discussion started by: shishirkotkar
2 Replies

7. Shell Programming and Scripting

help with bourne shell script

Attempting to write a script to eventually notify me via email for when there is packetloss across the backbone. I am looking for values greater than 0% in the mtr field. #!/bin/sh target=www.google.com date +"%D"_"%T" >> /home/rich/mtr.log echo "----------------------------------------" >>... (1 Reply)
Discussion started by: closedown
1 Replies

8. Red Hat

Loggin SFTP activity for chrooted (rssh) users

Hi, I need to log the activity of my SFTP (RHEL 5.4). I have this in /etc/sshd/sshd_config: Subsystem sftp /usr/libexec/openssh/sftp-server -f LOCAL5 -l VERBOSE And this in /etc/syslog.conf: LOCAL5.* /var/log/sftp.log When I log in... (1 Reply)
Discussion started by: Tr0cken
1 Replies

9. Shell Programming and Scripting

Shell Script to zip users cmd history log files

I admit I am terrible with scripting, so when I was asked to store users' command history lines and zip them on monthly basis what I did was to create a file "user_history_Feb" with the following contents: Part A # more user_history_Feb cp -p /var/log/user_history/*history... (6 Replies)
Discussion started by: hedkandi
6 Replies

10. Homework & Coursework Questions

New user needs help with bourne shell script

This is my question, below the question is the template Write and execute a Bourne shell script called homework that will From within the script, create three background processes: a) (2 points) one that saves a long listing of your hidden files to a file named hiddenlist b) (2 points) ... (4 Replies)
Discussion started by: luislozoya
4 Replies
pam_console(8)						   System Administrator's Manual					    pam_console(8)

NAME
pam_console - control permissions for users at the system console SYNOPSIS
session optional /lib/security/pam_console.so auth required /lib/security/pam_console.so DESCRIPTION
pam_console.so is designed to give users at the physical console (virtual terminals and local xdm-managed X sessions by default, but that is configurable) capabilities that they would not otherwise have, and to take those capabilities away when the are no longer logged in at the console. It provides two main kinds of capabilities: file permissions and authentication. When a user logs in at the console and no other user is currently logged in at the console, pam_console.so will change permissions and own- ership of files as described in the file /etc/security/console.perms. That user may then log in on other terminals that are considered part of the console, and as long as the user is still logged in at any one of those terminals, that user will own those devices. When the user logs out of the last terminal, the console may be taken by the next user to log in. Other users who have logged in at the console during the time that the first user was logged in will not be given ownership of the devices unless they log in on one of the terminals; having done so on any one terminal, the next user will own those devices until he or she has logged out of every terminal that is part of the physical console. Then the race can start for the next user. In practice, this is not a problem; the physical console is not gener- ally in use by many people at the same time, and pam_console.so just tries to do the right thing in weird cases. ARGUMENTS
debug turns on debugging allow_nonroot_tty gain console locks and change permissions even if the TTY's owner is not root. permsfile=filename tells pam_console.so to get its permissions database from a different file than /etc/security/console.perms fstab=filename tells pam_console.so to read the table of configured filesystems from a file other than /etc/fstab when scanning permsfile. This file is used to map directories to device names. FILES
/var/run/console.lock /var/run/console/ /etc/security/console.apps /etc/security/console.perms SEE ALSO
console.perms(5) console.apps(5) /usr/doc/pam*/html/index.html pam_console_apply(8) /usr/doc/pam*/html/index.html BUGS
Let's hope not, but if you find any, please report them via the "Bug Track" link at http://bugzilla.redhat.com/bugzilla/ AUTHOR
Michael K. Johnson <johnsonm@redhat.com> Red Hat 2000/7/11 pam_console(8)
All times are GMT -4. The time now is 01:36 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy