pm: Zeile schreiben

Hallo

Ist es und wenn ja wie moeglich mit Cgi/Perl moeglich in eine Datei zu schreiben und zwar beispielsweise nur die 23. Zeile zu ueberschreiben?

  1. Hallo

    Ist es und wenn ja wie moeglich mit Cgi/Perl moeglich in eine Datei zu schreiben

    ja, schau unter:
    $perldoc -f open
    $perldoc -f print
    $perldoc -f close

    »»und zwar beispielsweise nur die 23. Zeile zu ueberschreiben?
    nicht direkt, das gibt dein Filesystem nicht her.
    Da hilt nur, alles komplett neu zu schreiben.

    Gruss,
    Kube

  2. Hallo

    Auch Hallo

    Ist es und wenn ja wie moeglich mit Cgi/Perl moeglich in eine Datei zu schreiben und zwar beispielsweise nur die 23. Zeile zu ueberschreiben?

    Definitiv Ja. Manchmal auch etwas über umwegen, aber es funktioniert. In Perl bsw. wäre es am einfachsten den Inhalt der Datei in ein Array einzulesen, diesen dann auszuwerten und wenn man in der 23 Zeile angelangt ist, dann entsprechend zu ersetzen. Das ist ohne weiteres machbar.

    gruss
    Andreas

  3. Hallo

    Ist es und wenn ja wie moeglich mit Cgi/Perl moeglich in eine Datei zu schreiben und zwar beispielsweise nur die 23. Zeile zu ueberschreiben?

    meine lösung ist vielleicht nicht optimal, funktioniert aber ähnlich.

    open(FILE,"<".$filename)
    $i=0;
    do{
      $i++;
      $line = readline(FILE);
      if ($i == 23){
        $line = "neue zeile 23";
      }
      push(@whole_file,$line);
    } while($line);
    close(FILE);
    open(FILE,">".$filename)
    foreach(@whole_file){
      print FILE $_
    }
    close(FILE);

    so. hab das mal rasch zusammengebastelt. es braucht natürlich noch ein error-handling, von wegen file kann nicht geöffnet werden und so.

    grüssle
    bjoern