Sponsored Content
Top Forums Shell Programming and Scripting Write a scripts to kill idle user for 60 min. & email user list to admin in text file Post 302507607 by sumit30 on Thursday 24th of March 2011 10:15:53 AM
Old 03-24-2011
Question Write a scripts to kill idle user for 60 min. & email user list to admin in text file

Folks,

I have written one script for following condition by referring some of online post in this forum. Please correct it if I'm missing something in it. (OS: AIX 5.3)

  1. List the idle user. (I used whoidle command to list first 15 user and get username, idle time, pid and login time). Any other suggestion to get all the user at once including above things?
  2. Exclude few users from list (system user and admin user)
  3. Calculate idle time(if user is more than 60 min idle)
  4. Make entry of that user in log file (If possible I want to create text file)
  5. Email log file to admin
  6. Sleep for 5 min. after emailing total list of user to admin
  7. Kill the users in list
  8. Loop it to reach next 15 users. (If possible I want to get rid of this condition by following all idle user list command with pid's)


Code:
IDLE_USER=/tmp/idleusers.log
idletimeslist=$(whoidle | awk '{print $4}')
maxidletime = 0:59

idletimes= $(grep -v^"root|daemon|bin|sys|adm|nobody|abc|pqr" $idletimeslist)


for numbers in $idletimes;do

if [[ $(echo "$numbers" | grep : ) == $maxidletime]];then
getline=$(whoidle | grep $numbers)
user=$(echo $getline | awk '{print $1}')
processid=$(echo $getline | awk '{print $5}')
started=$(echo $getline | awk '{print $3}')
echo $user' '$processid' '$started' '$number >> $IDLE_USER
fi
done

# Send Email notification
# Please suggest email command to email log file to admin email id.
# Also can I convert log file to text file? (word file)

sleep 300

pidlist= awk '{print $2}' $IDLE_USER
for pid in $pidlist;do
kill $pid
done
# I have no idea how I can loop it to satisfy condition '8'. Do i need true or false flag #for it?


I need to put this code in production as soon as possible.
Expert please throw some light on it.
Thanks in advance.
Sumit

Last edited by pludi; 03-24-2011 at 08:27 PM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

user & group read/write access question

folks; I created a new users on my SUSE box and i need to give this user/group a read write access to one specific folder. here's the details: - I created new user "funny" under group "users". - I need to give this user "funny" a read/write access to another directory that is owned by "root".... (3 Replies)
Discussion started by: Katkota
3 Replies

2. UNIX for Dummies Questions & Answers

Difference between : Locked User Account & Disabled User Accounts in Linux ?

Thanks AVKlinux (3 Replies)
Discussion started by: avklinux
3 Replies

3. UNIX for Advanced & Expert Users

Send email as a different user than the user logged in

Hi I am using mailx to send email and am wondering if there is a way I can send the email from a different user than the user logged in. something like do-not-reply@xyz.com Thank you. (1 Reply)
Discussion started by: rakeshou
1 Replies

4. Shell Programming and Scripting

How to kill process after x idle min?

I need a script to kill those process id whose idle time is more than 30min plz help me (3 Replies)
Discussion started by: salil2012
3 Replies

5. Homework & Coursework Questions

[Scripting]Find & replace using user input then replacing text after

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: (o) Checkout an auto part: should prompt the user for the name of the auto part and borrower's name: Name:... (2 Replies)
Discussion started by: SlapnutsGT
2 Replies

6. Shell Programming and Scripting

User idle time and kill

Hello.. I have many sleepy users on my Solaris box and need to kill them if they are idle for more than 45 minutes for example...I know who -u gives and the idle time but unable to make a awk line to get the condition perfect. Please help...:wall: (9 Replies)
Discussion started by: wimaxpole
9 Replies

7. Shell Programming and Scripting

Script to Send Email to a user when an admin kills process

Can anyone create or give me a script that I can use to email a user automatically when I kill one of their processes? Or Can you give me a script to allow me to email a user (entering email manually) when a process is killed? Like showing what the PID was and a reason the admin killed it? Is... (2 Replies)
Discussion started by: JoeGazz84
2 Replies

8. Shell Programming and Scripting

set only some command & scripts permission to a particular user

hi, i am new in unix.......i am using bash and i want to create a user which has only some command and scripts permission.........is it possible? thanx (1 Reply)
Discussion started by: rakeshtomar82
1 Replies

9. Homework & Coursework Questions

Need to write a script user.sh that parses name & password

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: Write a script called user.sh that parses the name and password of given in a file (user.txt) and creates the user... (1 Reply)
Discussion started by: Nygenesis
1 Replies

10. UNIX for Dummies Questions & Answers

Deletion of list of user based on a text file In LDAP UNIX server

Dear All, It would be really nice, if you could help me to write a script for deletion of list of user( more than 15000 users) stored in a file and sorted by email address( i need deletion of only a particular type of mail address). Is the any script to write and take the file as input and... (3 Replies)
Discussion started by: Chand
3 Replies
CONCALC(1)							   User Commands							CONCALC(1)

NAME
concalc - console calculator SYNOPSIS
concalc [options] "expression" concalc -m script "path" DESCRIPTION
concalc calculates the given input term and returns the result as text. Please use will have problems with the shell interpretor. If you give concalc more than one expression, all expression will be put together. CALCULATION SYNTAX
standard calculations 2*(3+4/9)^3 standard operations + - * / ^ % sin cos tan asin acos atan sinh cosh tanh asinh acosh atanh ln log & | ! && || ~ >> << x rnd sqrt curt root integ d/dx sqare root and cubic root sqrt12 curt8 trigonometric functions and logarithms sin3.64+ln5 other roots fourth root of nine: 4root9 differential calculation differential calculation of 2x^2-3x+3 at x=9: d/dx(2x^2-3x+3,9) integration integration of sinx+cosx between -1 and 3.2: integ(sinx+cosx,-1,3.2) set variables save the result of a calculation in variable A: 12*45/2->A recall variables multiply the saved value with 2: A*2 use last result The last result is saved in the answer memory: ans+1 CONSTANTS
e euler constant pi pi; example: sin(pi/2) NUMBERS
standard 12.34 with exponent 12.23e-5 complex 12i-5 OPTIONS
-o, --output [output length] The argument is a number between 2 and the maximal possible output length (normally 18). -m, --mode [calculator mode] The mode can be std (default, normal scientific calculatons), base (for logic functions and base-n calculatons) or script (for exe- cuting scripts). In scripting mode, the last argument must be the path to the script file. -c, --complex This option enables complex numbers for the calculation. They are switched off by default. -b, --base [calculator base] The argument must be one of hex (hexadecimal), dec (decimal, default), oct (octal) and bin (binary). This option can only be used when -m base is set. -a, --angle [angle type] The argument must be one of deg (degrees), rad (radiant), gra (grade). -v, --version Output the version of Concalc. -h, --help Outputs a short help. SCRIPTING
The script interpreter of calc uses a C-like programming syntax. The following command are supported. if expression if(condition) command for condition true; else command for condition false; while loop while(condition) command that is run while condition is true; for loop for(initialisation; condition; count-command) command that is run while condition is true; print command print( output to print out ); getline command getline; // read a text line from stdin and returns this text getkey command getkey; // return the key pressed by the user // blocks until the user presses any key keystate command keystate; // returns the key pressed by the user or 0 if no key was pressed // nonblocking sleep command sleep( time in microseconds ); //Script is stops for the given time compare operators ==, != equal, unequal >=, <=, >, < greather or equal, less or equal, greather, less set operators -> calculator set operator = C-like set operator type converting (float) floating point value (int) integer value (string) text value (bool) boolean value BUGS
No bugs known! If you find one, please report it by e-mail to the author. AUTHOR
Rainer Strobel <rainer1223@users.sourceforge.net> SEE ALSO
http://extcalc-linux.sourceforge.net Linux APRIL 2007 CONCALC(1)
All times are GMT -4. The time now is 10:50 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy