1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Inhalt einer Textdatei löschen

  • mjx_biz
  • 4. Dezember 2009 um 09:26
  • Unerledigt
  • mjx_biz
    13
    mjx_biz
    Mitglied
    Reaktionen
    17
    Punkte
    1.772
    Beiträge
    340
    • 4. Dezember 2009 um 09:26
    • #1

    Guten Morgen =)!

    Ich bastle gerade an einem Perlscript und frage mich, wie ich den Inhalt einer Textdatei löschen kann. Ich will also nicht die Datei selbst löschen, sondern nur den Text, den sie beinhaltet.

    Habe schon ein paar Sachen gefunden, allerdings scheinen mir die sehr umständlich. Gibts denn nicht sowas wie

    Code
    $nix = "";
    overwrite(file, $nix);

    :D? Würde gerne die ganze Datei überschreiben und nicht in einer Schleife jede einzelne Zeile bearbeiten :shinner:?

    Wird das Internet eigentlich leichter, wenn man sich da was runterlädt?!

  • Ringding
    11
    Ringding
    Mitglied
    Reaktionen
    12
    Punkte
    1.237
    Beiträge
    244
    • 4. Dezember 2009 um 09:42
    • #2

    Die C-Funktion heißt ftruncate. Wie das in perl heißt, musst du selber rausfinden :).

    Alternativ kannst du auch /dev/null auf die Datei kopieren.

  • Kampi
    27
    Kampi
    Mitglied
    Reaktionen
    193
    Punkte
    7.828
    Beiträge
    1.468
    • 4. Dezember 2009 um 10:07
    • #3

    wenn die datei dann aber gleich lang wie vorher sein soll braeuchte man 2 mal truncate.

    laut manpage bewegt man sich da leicht aus dem POSIX-land. ob perl dieses problem dann intern aufloest weisz ich aber nicht.

    Willfähriges Mitglied des Fefe-Zeitbinder-Botnets und der Open Source Tea Party.

  • mjx_biz
    13
    mjx_biz
    Mitglied
    Reaktionen
    17
    Punkte
    1.772
    Beiträge
    340
    • 4. Dezember 2009 um 10:40
    • #4

    An truncate hab ich gar nicht gedacht. Werd ich dann gleich probieren, danke :thumb:!

    Wird das Internet eigentlich leichter, wenn man sich da was runterlädt?!

  • michi204
    26
    michi204
    Mitglied
    Reaktionen
    63
    Punkte
    7.268
    Beiträge
    1.318
    • 4. Dezember 2009 um 11:51
    • #5
    Code
    [mj@susi tmp]$ echo "ha" > test.dat
    [mj@susi tmp]$ cat test.dat 
    ha
    [mj@susi tmp]$ perl -e 'open HANDLE, ">test.dat" ; close HANDLE;'
    [mj@susi tmp]$ cat test.dat
    [mj@susi tmp]$

    also open reicht..
    lg

  • Kampi
    27
    Kampi
    Mitglied
    Reaktionen
    193
    Punkte
    7.828
    Beiträge
    1.468
    • 4. Dezember 2009 um 13:19
    • #6

    um genau zu sein ist es nicht ein "open reicht", sondern ein "open macht automatisch ein truncate".
    [edit]

    Zitat von perldoc


    If MODE is '>' , the file is truncated and opened for output, being created if necessary.


    [/edit]

    Willfähriges Mitglied des Fefe-Zeitbinder-Botnets und der Open Source Tea Party.

    Einmal editiert, zuletzt von Kampi (4. Dezember 2009 um 13:24)

  • mjx_biz
    13
    mjx_biz
    Mitglied
    Reaktionen
    17
    Punkte
    1.772
    Beiträge
    340
    • 4. Dezember 2009 um 16:28
    • #7

    Nur zur Info: sicherheitshalber erstelle ich die Datei jedes Mal neu und lösche sie nach dem Zugriff wieder. Funktioniert auch :). Wollt ich zwar nicht, hab aber nachgefragt und es ist egal.

    Wird das Internet eigentlich leichter, wenn man sich da was runterlädt?!

  • Ringding
    11
    Ringding
    Mitglied
    Reaktionen
    12
    Punkte
    1.237
    Beiträge
    244
    • 4. Dezember 2009 um 16:46
    • #8
    Zitat von michi204

    also open reicht..

    Stimmt... :)

  • michi204
    26
    michi204
    Mitglied
    Reaktionen
    63
    Punkte
    7.268
    Beiträge
    1.318
    • 4. Dezember 2009 um 16:57
    • #9
    Zitat von Kampi

    um genau zu sein ist es nicht ein "open reicht", sondern ein "open macht automatisch ein truncate".
    [edit]

    [/edit]

    meinst du truncate oder truncate? ich sprach von zweiterem :)

    lg

  • Kampi
    27
    Kampi
    Mitglied
    Reaktionen
    193
    Punkte
    7.828
    Beiträge
    1.468
    • 6. Dezember 2009 um 18:52
    • #10
    Zitat von michi204

    meinst du truncate oder truncate? ich sprach von zweiterem :)

    du sprachst ueberhaupt nicht von truncate, egal von welchem. du hast schon recht, ein open reicht. eben weil es, wie von mir zitiert, ein truncate macht.

    Willfähriges Mitglied des Fefe-Zeitbinder-Botnets und der Open Source Tea Party.

  • Maximilian Rupp 27. Dezember 2024 um 00:26

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 2 Besucher

Rechtliches

Impressum

Datenschutzerklärung