[OT] Awk question

Patrick O'Callaghan pocallaghan at gmail.com
Thu Aug 21 14:08:26 UTC 2008


On Thu, 2008-08-21 at 09:14 +0100, Dan Track wrote:
> On Wed, Aug 20, 2008 at 11:11 AM, Rui Miguel Silva Seabra <rms at 1407.org> wrote:
> > On Wed, Aug 20, 2008 at 11:03:58AM +0100, Dan Track wrote:
> >> Just wondering if you could lend me a little hand. Basically I want to
> >> rename a file from log.1 log.2 etc to log.10.36.34. The time stamp
> >> (ignore the date) should be the last written time, so far I've got to
> >> this stage:
> >>
> >> stat log | sed  -n '/Modify:/p' | awk -F ' ' '{print $3}'
> >>
> >> so I get :
> >> 11:01:09.000000000
> >>
> >> How can I get rid of the leading 0'swithout having to pipe the output
> >> to anotehr awk statement, is it possible to do this withing the
> >> current awk statement?
> >
> > There simpler solutions but this works:
> >
> > stat log | awk '/Modify/ { print $3 }' | cut -d . -f 1
> >
> 
> 
> Hi
> 
> I had already changed it to do it the way you mentioned. Guess there's
> no way to do a second break within AWK.

As I said before, use printf:

stat log | awk '/Modify/ { printf "%.8s\n", $3 }'

poc




More information about the users mailing list