On Wed, 27 Oct 2004 08:24:02 +0300, Narcis Radu <[EMAIL PROTECTED]> wrote:
> Salut!
> 
> Se pare ca sunt prea adormit la ora asta si nu ma prind cum pot sa
> rezolv urmatoarea chestie:
> 
> Se da un fisier cu niste linii de genul:
> http://one.site.or.anoter/to_a_file/fila_xxxx-tp.html, unde xxxx e un intreg
> Daca am gasit 2 linii cu acelasi xxxx, sa inlocuiesc a doua linie cu:
> http://one.site.or.anoter/to_a_file/fila_xxxx-tpi.html
> 
> Orice idee e binevenita!
> Multam anticipat!
> 
> Darkus
> 
> ---
> Detalii despre listele noastre de mail: http://www.lug.ro/
> 
> 


$ cat 1.awk
/[0-9]+/    {
    kk=$0; line=$0;
    gsub(/[^0-9]/,"",$kk);
    if ($kk in aa) {
        gsub(/[0-9]+/, "X", line);
    } else {
        aa[$kk]++;
    }
    print line;
 }
$ cat 1.txt
nasdnalnsd100
sdfkasdkas200sdlfnvl
sdpfjsfpsjd100aa
sdifgsdsdfsd300aaa
asdfjvasnvkas100dkkdkd
gns200sdksnlksd

$ awk -f 1.awk < 1.txt
nasdnalnsd100
sdfkasdkas200sdlfnvl
sdpfjsfpsjdXaa
sdifgsdsdfsd300aaa
asdfjvasnvkasXdkkdkd
gnsXsdksnlksd

Eu am inlocuit numarul cu X, poti face tu ce vrei cu linia curenta
modificand gsub(/[0-9]+/, "X", line).

Nota: am presupus ca ai un singur numar pe linie, altfel se 
 complica parsarea.
Se poate face si in perl, similar - manipularea stringurilor e si
mai flexibila.

peace,
_bogdan_

--- 
Detalii despre listele noastre de mail: http://www.lug.ro/


Raspunde prin e-mail lui