Re: suggested addition to 'date'

From: Sam Leffler <sam_at_errno.com>
Date: Fri, 11 Aug 2006 20:52:58 -0700
Sam Leffler wrote:
> Julian Elischer wrote:
>> At various times I've wanted to add timestamps to logfiles as they are
>> generated..
>>
>> usually this has involved perl or something to do it.
>>
>> finally I broke down and just added  a small bit to date(1)
>>
>> the -s option tells date to add a timestamp on the front of every line
>> read in through stdin
>> and put it out through stdout.   teh format of the datestamp is governed
>> exactly as usual so:
>>
>> %ls | ./date -s +"%+: "
>> Fri Aug 11 19:53:34 PDT 2006: CVS
>> Fri Aug 11 19:53:34 PDT 2006: Makefile
>> Fri Aug 11 19:53:34 PDT 2006: date
>> Fri Aug 11 19:53:34 PDT 2006: date.1
>> Fri Aug 11 19:53:34 PDT 2006: date.1.gz
>> Fri Aug 11 19:53:34 PDT 2006: date.c
>> Fri Aug 11 19:53:34 PDT 2006: date.o
>> Fri Aug 11 19:53:34 PDT 2006: extern.h
>> Fri Aug 11 19:53:34 PDT 2006: netdate.c
>> Fri Aug 11 19:53:34 PDT 2006: netdate.o
>> Fri Aug 11 19:53:34 PDT 2006: vary.c
>> Fri Aug 11 19:53:34 PDT 2006: vary.h
>> Fri Aug 11 19:53:34 PDT 2006: vary.o
>> %ls | ./date -s +"%s: "
>> 1155351474: CVS
>> 1155351474: Makefile
>> 1155351474: date
>> 1155351474: date.1
>> 1155351474: date.1.gz
>> 1155351474: date.c
>> 1155351474: date.o
>> 1155351474: extern.h
>> 1155351474: netdate.c
>> 1155351474: netdate.o
>> 1155351474: vary.c
>> 1155351474: vary.h
>> 1155351474: vary.o
>> %
>> I attach the diff.
>> I'm sure that someone who is a more competent practicioner of userland C
>> programming
>> can probably clean this up abit.
>>
>> do people think this is a worthwhile addition?
>>
>> An easy to imagine use for this is to add it in the makefile for /usr so
>> that "make buildworld" datestamped its output
>> (for example).
>>
>> it makes it easy to timestamp output from a console logger for example:
> 
> pbj% ls | sed -e "s/^/`date +'%+: '`/"
> Fri Aug 11 20:18:05 PDT 2006: Desktop
> Fri Aug 11 20:18:05 PDT 2006: Desktop DB
> Fri Aug 11 20:18:05 PDT 2006: Desktop DF
> Fri Aug 11 20:18:05 PDT 2006: Documents
> Fri Aug 11 20:18:05 PDT 2006: Library
> Fri Aug 11 20:18:05 PDT 2006: Movies
> 	...

I figure you won't like that 'cuz it pastes the same date stamp on every
line so here's another offering:

pbj% ls | awk '{ "date +'%+'" | getline x; print x ": " $0; }'
Fri Aug 11 20:50:42 PDT 2006: Desktop
Fri Aug 11 20:50:42 PDT 2006: Desktop DB
Fri Aug 11 20:50:42 PDT 2006: Desktop DF
Fri Aug 11 20:50:42 PDT 2006: Documents
Fri Aug 11 20:50:42 PDT 2006: Library
Fri Aug 11 20:50:42 PDT 2006: Movies
Received on Sat Aug 12 2006 - 01:53:08 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:58 UTC