Dan Track | 20 Aug 12:03

[OT] Awk question

Guys,

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?

Thanks
Dan

--

-- 
fedora-list mailing list
fedora-list <at> redhat.com
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list

Chris G | 20 Aug 12:58

Re: [OT] Awk question

On Wed, Aug 20, 2008 at 11:03:58AM +0100, Dan Track wrote:
> Guys,
> 
> 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?
> 
Probably, yes, look at the substr() function.

You don't need the sed in the pipe either I don't think, you could do
this with the pattern matching capabilities of awk, e.g. (not tested) :-

    stat log | awk -F ' ' '/Modify:/ {print $3}'

(N.B. I haven't done the substr() bit)

-- 
Chris Green

--

-- 
(Continue reading)

Patrick O'Callaghan | 20 Aug 15:20

Re: [OT] Awk question

On Wed, 2008-08-20 at 11:03 +0100, Dan Track wrote:
> Guys,
> 
> 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?

Use printf instead of print.

poc

--

-- 
fedora-list mailing list
fedora-list <at> redhat.com
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list

Re: [OT] Awk question

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

-- 
Wibble.
Today is Boomtime, the 13rd day of Bureaucracy in the YOLD 3174
+ No matter how much you do, you never do enough -- unknown
+ Whatever you do will be insignificant,
| but it is very important that you do it -- Gandhi
+ So let's do it...?

--

-- 
fedora-list mailing list
fedora-list <at> redhat.com
(Continue reading)

Dan Track | 21 Aug 10:14

Re: [OT] Awk question

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.

Thanks Guys,

Dan

(Continue reading)

Patrick O'Callaghan | 21 Aug 16:08

Re: [OT] Awk question

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:

(Continue reading)

Roger Heflin | 21 Aug 17:17

Re: [OT] Awk question

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.
> 
> Thanks Guys,
> 
> Dan
(Continue reading)

NiftyFedora Mitch | 22 Aug 00:03
Favicon

Re: [OT] Awk question

On Thu, Aug 21, 2008 at 8:17 AM, Roger Heflin <rogerheflin <at> gmail.com> wrote:
> 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.
(Continue reading)


Gmane