Results 1 to 6 of 6

Thread: script to keep trackk of my last login

  1. #1
    Junior Member
    Join Date
    May 2006
    Location
    Dubai
    Posts
    2

    script to keep trackk of my last login

    Hi,

    I would like to edit my .bashrc to help me keep track of when I last logged on. I have my image set on my hard drive so my home directory is permanant. Now, I would like whenever I log it for the script to tell me when was the lat time I logged in, how many times I have loged in so far and record my new login time.


    I was thinking of using a file to record the login date and a login counter but I don't know how to overwrite a file at every login with the new informatiion. Nor do I know how to read a file at log in to capture this information... Any ideas?


    Thanks,

  2. #2
    Senior Member registered user
    Join Date
    Apr 2005
    Location
    italy
    Posts
    245
    I guess you can put in your .bashrc something like:
    lastlog | grep 'myusername' >> logfile.txt

    not sure, not tested

  3. #3
    Junior Member
    Join Date
    May 2006
    Location
    Dubai
    Posts
    2
    Here is what I have come up so far:

    #set up the variable
    declare -i logCounter=0
    declare lastDate

    #read the file


    #Display the information for the user
    echo -n "Your last login was on: "
    echo $lastDate
    echo
    echo "You have login $logCounter time(s) so far."
    echo

    #Record the new information for next time
    date | cat > .loginInfo
    echo $logCounter | cat >> .loginInfo



    As you can see all that I am missing is how to read the file properly. The 1st line is the date and the 2nd is the login counter. How can I read each line of the file into the variables?

    ALSO, I am not sure if my way of recording the information is the most elegant and efficiant... So I would welcome any suggestions on this part as well

  4. #4
    Member registered user
    Join Date
    Jun 2004
    Posts
    83
    Typing "last ejodoin" is not sufficient? Either way, it may give you a tip for a better approach.

  5. #5
    Senior Member registered user
    Join Date
    Nov 2002
    Location
    USA, IL
    Posts
    1,041

    Re: script to keep trackk of my last login

    Example:

    ' last dave |head '
    Code:
    dave     pts/7        :0.0             Thu May 11 11:24   still logged in   
    dave     pts/0        :0               Thu May 11 11:24   still logged in   
    dave     pts/7        :0.0             Thu May 11 11:24 - 11:24  (00:00)    
    dave     pts/2        :0.0             Thu May 11 10:48 - 11:24  (00:35)    
    dave     pts/0        :0               Thu May 11 10:48 - 11:24  (00:35)    
    dave     tty2                          Thu May 11 10:48   still logged in   
    dave     pts/9        :0.0             Wed May 10 23:43 - 01:51  (02:08)    
    dave     pts/8        :0.0             Wed May 10 22:00 - 00:53  (02:53)    
    dave     pts/8        :0.0             Wed May 10 21:08 - 21:59  (00:51)    
    dave     pts/2        :0.0             Wed May 10 21:07 - 01:51  (04:44)
    Quote Originally Posted by ejodoin
    Hi,

    I would like to edit my .bashrc to help me keep track of when I last logged on. I have my image set on my hard drive so my home directory is permanant. Now, I would like whenever I log it for the script to tell me when was the lat time I logged in, how many times I have loged in so far and record my new login time.


    I was thinking of using a file to record the login date and a login counter but I don't know how to overwrite a file at every login with the new informatiion. Nor do I know how to read a file at log in to capture this information... Any ideas?


    Thanks,

  6. #6
    Senior Member registered user
    Join Date
    Sep 2005
    Posts
    205
    Quote Originally Posted by ejodoin
    Here is what I have come up so far:

    #set up the variable
    declare -i logCounter=0
    declare lastDate

    #read the file


    #Display the information for the user
    echo -n "Your last login was on: "
    echo $lastDate
    echo
    echo "You have login $logCounter time(s) so far."
    echo

    #Record the new information for next time
    date | cat > .loginInfo
    echo $logCounter | cat >> .loginInfo



    As you can see all that I am missing is how to read the file properly. The 1st line is the date and the 2nd is the login counter. How can I read each line of the file into the variables?

    ALSO, I am not sure if my way of recording the information is the most elegant and efficiant... So I would welcome any suggestions on this part as well
    I suggest you save the information like this: (ps. you don't need 'cat' here)
    Code:
    #Record the new information for next time
    echo "lastDate=\"$(date)\"" > .loginInfo
    echo "logCounter=\"$logCounter\"" >> .loginInfo
    .loginInfo should now contain
    Code:
    lastDate="...the date..."
    logCounter="...the number..."
    which is valid bash-code. You can then include this bash-code to your script with
    Code:
    #read the file
    source .loginInfo
    which sets $lastDate and $logCounter to proper values.

    You also need to increment logCounter at some point e.g. with
    Code:
    ((logCounter = logCounter + 1))

Similar Threads

  1. Can't login at XServer Login Window
    By torbu in forum General Support
    Replies: 2
    Last Post: 05-16-2004, 11:33 AM
  2. Can't login to Debian login screen
    By turbines in forum Hdd Install / Debian / Apt
    Replies: 3
    Last Post: 04-17-2004, 04:40 PM
  3. A Live CD script for Auto Internet Login? (DSL)
    By bonecrusher in forum General Support
    Replies: 1
    Last Post: 03-05-2004, 11:17 AM
  4. Help with a script
    By lindros in forum General Support
    Replies: 10
    Last Post: 07-24-2003, 08:26 PM
  5. script
    By punk000 in forum General Support
    Replies: 3
    Last Post: 02-26-2003, 07:02 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


16GB DDR4 Corsair Vengeance LPX  3000 Mhz 1.35V Desktop Computer PC Memory RAM picture

16GB DDR4 Corsair Vengeance LPX 3000 Mhz 1.35V Desktop Computer PC Memory RAM

$30.89



A-Tech 8GB DDR3 1600 PC3-12800 Laptop SODIMM 204-Pin Memory RAM PC3L DDR3L 1x 8G picture

A-Tech 8GB DDR3 1600 PC3-12800 Laptop SODIMM 204-Pin Memory RAM PC3L DDR3L 1x 8G

$13.99



Crucial DDR3L 16GB 1600 2x 8GB PC3-12800 Laptop SODIMM Memory RAM PC3 16G DDR3 picture

Crucial DDR3L 16GB 1600 2x 8GB PC3-12800 Laptop SODIMM Memory RAM PC3 16G DDR3

$22.45



SK Hynix 8GB DDR4 1Rx16 -PC4-3200AA/ HMAA1GS6CJR6N-XN SODIMM picture

SK Hynix 8GB DDR4 1Rx16 -PC4-3200AA/ HMAA1GS6CJR6N-XN SODIMM

$10.00



Team T-FORCE VULCAN Z 32GB (2 x 16GB) PC RAM DDR4 3200 (PC4 25600) Memory picture

Team T-FORCE VULCAN Z 32GB (2 x 16GB) PC RAM DDR4 3200 (PC4 25600) Memory

$54.99



8GB PC3L-12800S 1600MHz SODIMM DDR3 RAM | Grade A picture

8GB PC3L-12800S 1600MHz SODIMM DDR3 RAM | Grade A

$12.00



[ BULK LOT OF 10 ] 8GB DDR4 Desktop RAM SAMSUNG, HYNIX etc. (10x) picture

[ BULK LOT OF 10 ] 8GB DDR4 Desktop RAM SAMSUNG, HYNIX etc. (10x)

$89.99



SAMSUNG 4Gb 2Rx8 DDR3 PC3-10600S LAPTOP SODIMM RAM MEMORY M471B5273DH0-CH9 picture

SAMSUNG 4Gb 2Rx8 DDR3 PC3-10600S LAPTOP SODIMM RAM MEMORY M471B5273DH0-CH9

$5.99



Samsung 32GB 1Rx4 PC5-4800 EC4 RDIMM DDR5-38400 ECC Registered Server Memory RAM picture

Samsung 32GB 1Rx4 PC5-4800 EC4 RDIMM DDR5-38400 ECC Registered Server Memory RAM

$109.99



Lot of 100 - 4GB PC3 DDR3 Mixed Speeds Laptop RAM Mix Brand TESTED picture

Lot of 100 - 4GB PC3 DDR3 Mixed Speeds Laptop RAM Mix Brand TESTED

$149.99