Visualizzazione dei risultati da 1 a 5 su 5

Discussione: ARGV e while(<>)

  1. #1
    Utente di HTML.it L'avatar di Sidur
    Registrato dal
    May 2005
    Messaggi
    29

    ARGV e while(<>)

    Ciao a tutti,
    ho realizzato uno script che deve fare una serie di matching all'interno di un file di testo.

    Quindi per fargli analizzare il file uso

    while(<>){
    ...
    }

    Però devo confrontare questo testo con una parola che gli viene passata dall'esterno.

    Siccome la passo attraverso PHP, non riesco ad utilizzare stdin, dovrei piuttosto utilizzare @ARGV.

    Il problema è che se invoco perl così:

    perl script.pl file1.txt > file2.out

    e non posso passare anche la parola, perché perl cerca un file con lo stesso nome e, non trovandolo, mi da errore.

    Grazie dell'aiuto

  2. #2
    di preciso cosa intendi dire con 'la passo attraverso php'?
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  3. #3
    Utente di HTML.it L'avatar di Sidur
    Registrato dal
    May 2005
    Messaggi
    29
    così:

    SYSTEM("perl script.pl $filein > $fileout");

    e ho bisogno di passargli un'ulteriore variabile, ma non posso recuperarla con @ARGV perché mi cerca il file...

  4. #4
    prova:

    SYSTEM("perl script.pl $filein $seconda_variabile > $fileout");

    e nello script perl:

    open(FILE, "<$ARGV[0]");
    while (<FILE>) {
    # qui hai in $ARGV[1] la seconda variabile
    }
    close FILE;
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  5. #5
    Utente di HTML.it L'avatar di Sidur
    Registrato dal
    May 2005
    Messaggi
    29
    Ok, funziona! Grazie mille...


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.