Last two logins script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Last two logins script
# 1  
Old 12-07-2009
Last two logins script

This is the contents of my file:

donald.duck 12/07/2009 12:07:58
donald.duck 12/07/2009 12:17:36
donald.duck 12/07/2009 12:22:29
donald.duck 12/07/2009 12:26:39
donald.duck 12/07/2009 12:28:01
mickey.mouse 12/07/2009 12:48:49
mickey.mouse 12/07/2009 12:49:33
mickey.mouse 12/07/2009 12:50:04



These are log in times/dates. How can I just keep the last two entries for any specific user only? I want the new output file to read:

donald.duck 12/07/2009 12:26:39
donald.duck 12/07/2009 12:28:01
mickey.mouse 12/07/2009 12:49:33
mickey.mouse 12/07/2009 12:50:04
# 2  
Old 12-07-2009
Something like:

Code:
for i in $(awk '{print $1}' YOURFILE | sort -u); do grep $i YOURFILE | tail -n2; done

# 3  
Old 12-07-2009
That works great, cabrao! Thanks a million! Just curious on how to have this output redirected back to the original file, if possible. Or will I have to have this output directed to a new file? I don't want the original file to grow out of control, as it is capturing all logins.

Maybe (if you can not redirect new output into original file) we could parse any lines in original file with a date older than 90 days? Any help is appreciated...

---------- Post updated at 10:03 AM ---------- Previous update was at 09:41 AM ----------

This is the original script to produce output file:

Code:
grep somestring /var/log/messages | awk '{print $1, $2, $9}' | sed -e 's/account=//g' -e 's/@gmail.com//g' -e 's/;//g' -e 's/,...//g' | tr '-' ' '|awk '{print $5" "$2"/"$3"/"$1" "$4}' | sort -o /tmp/testfile1 | uniq

Is there a way to add what cabrao stated to this to minimize the size of my current forever-growing output file (/tmp/testfile1)? All help is greatly appreciated.
# 4  
Old 12-10-2009
Try:

awk '{ A[$1]=_p"\n"$0;_p=$0; } END { for ( e in A) print A[e] }' file
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script that outputs user logins sorted by duration

Hello, I want to write a script that takes a username as input and outputs the user's logins sorted by duration. Also I want to exclude the "still logged in" entries. I use the "last" command but Im having problems sorting the entries based on the duration. Can you help me? Thanks a lot =) (4 Replies)
Discussion started by: ddante
4 Replies

2. Shell Programming and Scripting

Shell Scripting.... How to start a same script in 3 different logins?

Hi, I’ve a shell script. If I trigger the script it takes one day to complete the execution. I’ve to start the same script in 3 different logins of Unix machine simultaneously. Do you have any idea how can I make it? Please suggest. Thank you.. Stop making the font size smaller than... (3 Replies)
Discussion started by: testin
3 Replies

3. Shell Programming and Scripting

Emergency...!!! Shell Scripting.... How to start a same script in 3 different logins?

Hi, I've a shell script. If I trigger the script it takes one day to complete the execution. I've to start the same script in 3 different logins of Unix machine simultaneously. Do you have any idea how can I make it? Please suggest.:( Thank you.. (1 Reply)
Discussion started by: testin
1 Replies

4. Solaris

User Logins

Is the below logins are needed in the machine..... nuucp , uucp ,smmsp , svctag , listen , webservd , ip ( We are not using printers), Can you help in these? Regards, kumar (3 Replies)
Discussion started by: rajeshkumarvg
3 Replies

5. AIX

AIX ftp/sftp script monitor to failed logins

Hi All, Any idea on how to write a script on AIX 5.3 to monitor ftp or sftp login failed. Thanks and more power, Itik (2 Replies)
Discussion started by: itik
2 Replies

6. Shell Programming and Scripting

Run a script in two differnt logins

Hi, I need to run a script in two different login's in the same server, but it is running only in one login, i have used the corresponding PATH for each login, but still it says " not authorized to put msg in queue". (2 Replies)
Discussion started by: savithavijay
2 Replies

7. Shell Programming and Scripting

Help with shell script which logins to hosts

By a shell script When I am logging into hosts one by one with ssh. I am getting below message. Pseudo-terminal will not be allocated because stdin is not a terminal. stty: : Invalid argument stty: : Invalid argument Can you please suggest what should I do to stop this? ... (10 Replies)
Discussion started by: KuldeepSinghTCS
10 Replies

8. Shell Programming and Scripting

Another question for tracking failed logins via script

Hello Experts, I have this initial shell script that tracks failed login attempts: #!/bin/bash #Fetch failed user logins to file failed-logins.txt grep -i failed /var/log/secure | awk '{ print $1, $2" ", $3" ", $9" ", $11 }' > failed-logins.txt #Splitting the failed-logins in... (10 Replies)
Discussion started by: linuxgeek
10 Replies

9. AIX

Limit logins to 1

Trying to limit 1 login per account... Setup: We have 2 auth logins, one to the AIX (telnet)then into a distribution mgmt software, the users do not have a shell to log into on the AIX itself, so placing a script such as: active=`who | awk '{printf",%s,\n",$1}' | grep ,$LOGNAME, | wc -l` ... (0 Replies)
Discussion started by: pheusion
0 Replies

10. UNIX for Dummies Questions & Answers

Help with logins

Could someone please tell me what I would have to do so I can dial in to Solaris through a modem and login? Thanks in advance. Jomar (2 Replies)
Discussion started by: crispyco
2 Replies
Login or Register to Ask a Question