diff options
author | iedowse <iedowse@FreeBSD.org> | 2002-03-01 21:12:19 +0000 |
---|---|---|
committer | iedowse <iedowse@FreeBSD.org> | 2002-03-01 21:12:19 +0000 |
commit | 1090c48a394abcf2cce634967b761df386323cf1 (patch) | |
tree | 57d055b57007cb561106a68993b615d59aaafaa9 /usr.bin/last | |
parent | 5a6428cea6f4a4d6872e985d0e1411bd4ad7724f (diff) | |
download | FreeBSD-src-1090c48a394abcf2cce634967b761df386323cf1.zip FreeBSD-src-1090c48a394abcf2cce634967b761df386323cf1.tar.gz |
Add a new "-y" flag which causes the year to be included in the
session start time. This is useful when looking at old or long-running
wtmp files.
PR: bin/12982
Obtained from: KOJIMA Hajime <kjm@rins.ryukoku.ac.jp>, keramida
Reviewed by: keramida
MFC after: 1 week
Diffstat (limited to 'usr.bin/last')
-rw-r--r-- | usr.bin/last/last.1 | 5 | ||||
-rw-r--r-- | usr.bin/last/last.c | 13 |
2 files changed, 13 insertions, 5 deletions
diff --git a/usr.bin/last/last.1 b/usr.bin/last/last.1 index fcdb141..c1f68dc 100644 --- a/usr.bin/last/last.1 +++ b/usr.bin/last/last.1 @@ -32,7 +32,7 @@ .\" @(#)last.1 8.1 (Berkeley) 6/6/93 .\" $FreeBSD$ .\" -.Dd May 2, 2001 +.Dd March 1, 2002 .Dt LAST 1 .Os .Sh NAME @@ -41,6 +41,7 @@ .Sh SYNOPSIS .Nm .Op Fl Ns Ar n +.Op Fl y .Oo .Fl d .Sm off @@ -161,6 +162,8 @@ equivalent to .It Fl w Widen the duration field to show seconds, as well as the default days, hours and minutes. +.It Fl y +Report the year in the session start time. .El .Pp If multiple arguments are given, diff --git a/usr.bin/last/last.c b/usr.bin/last/last.c index f548651..eed36f5 100644 --- a/usr.bin/last/last.c +++ b/usr.bin/last/last.c @@ -90,6 +90,7 @@ static long currentout, /* current logout value */ static const char *file = _PATH_WTMP; /* wtmp file */ static int sflag = 0; /* show delta in seconds */ static int width = 5; /* show seconds in delta */ +static int yflag; /* show year */ static int d_first; static int snapfound = 0; /* found snapshot entry? */ static time_t snaptime; /* if != 0, we will only @@ -112,7 +113,7 @@ void usage(void) { (void)fprintf(stderr, -"usage: last [-#] [-d [[CC]YY][MMDD]hhmm[.SS]] [-f file] [-h hostname]\n" +"usage: last [-#] [-y] [-d [[CC]YY][MMDD]hhmm[.SS]] [-f file] [-h host]\n" "\t[-t tty] [-s|w] [user ...]\n"); exit(1); } @@ -130,7 +131,7 @@ main(argc, argv) maxrec = -1; snaptime = 0; - while ((ch = getopt(argc, argv, "0123456789d:f:h:st:w")) != -1) + while ((ch = getopt(argc, argv, "0123456789d:f:h:st:wy")) != -1) switch (ch) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': @@ -167,6 +168,9 @@ main(argc, argv) case 'w': width = 8; break; + case 'y': + yflag++; + break; case '?': default: usage(); @@ -334,8 +338,9 @@ printentry(bp, tt) exit(0); t = _int_to_time(bp->ut_time); tm = localtime(&t); - (void) strftime(ct, sizeof(ct), d_first ? "%a %e %b %R" : - "%a %b %e %R", tm); + (void) strftime(ct, sizeof(ct), d_first ? + (yflag ? "%a %e %b %Y %R" : "%a %e %b %R") : + (yflag ? "%a %b %e %Y %R" : "%a %b %e %R"), tm); printf("%-*.*s %-*.*s %-*.*s %s%c", UT_NAMESIZE, UT_NAMESIZE, bp->ut_name, UT_LINESIZE, UT_LINESIZE, bp->ut_line, |