[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Zeilen numerieren



Hallo,

Am Tue, 18 Oct 2005, Bernhard Wehmann schrieb:
>Am Dienstag 18 Oktober 2005 12:49 schrieb Joerg Sommer:
>> Sascha Hüdepohl <renegat@fbe.hs-bremen.de> wrote:
>> >> > Es besteht eine ascii-Datei mit folgendem Format:
>> >> >
>> >> > ...
>> >> > irgend ein text1 text1 text1     #421
>> >> > irgend ein text2 text2 text2     #422
>> >> > irgend ein text# text& text-     #423
>> >
>> > awk 'sub(/#.+/, NR)' < ascii-Datei
>>
>> Das funktioniert aber nicht in der dritten Zeile und sollte
>> nicht auch das #vor der Zeilennummer stehen bleiben?

Da fehlt nur der "Anker":

    awk 'sub("#[^#]*$","#"NR);'
               ^^^^^^

>Ja und es kann ja auch Zeilen geben, die noch kein #XXX am Ende 
>haben. Dann wird es aber ein bisschen länger:
>
>awk '{ a=match($0,"#[0-9 ]*$"); if(a) print  substr($0,1,a-1),  
>		"#"NR; else print $0, "#"NR; }'

Geht einfacher (hier z.B. mit tab + # vor der Zeilennummer):

    awk 'sub("#[^0-9]*$","#"NR) || sub("$","\t#"NR);'

-dnh

-- 
An application/evil MIME type is defined for Web- or email-carried
mischief. Other MIME types can be embedded inside of evil sections;
this permit easy encoding of word processing documents with macro
viruses, etc.                                           -- RfC 3514



Reply to: