Thread Löschen mit unlink (24 answers)
Opened by yasukatakaya at 2007-06-06 10:36

betterworld
 2007-06-07 07:08
#77280 #77280
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
[quote=yasukatakaya,06.06.2007, 08:36]doch wenn ich unlink nach dem open(.....); schreibe, löscht er die Datei nicht, heisst es, dass geöffnete Dateien nicht gelöscht werden können[/quote]
Ich weiss nicht, wie das bei gewissen selbsternannten Betriebssystemen ist, aber unter Un*x kann man sehr wohl Dateien unlinken, die man noch geoeffnet hat.  Danach kann sie niemand mehr ueber ihren ehemaligen Dateinamen erreichen, aber man kann den Dateideskriptor noch benutzen.  Wenn die Datei dann geschlossen wird, wird der Inhalt endgueltig von der Platte geloescht.  Zitat aus "man 2 unlink":
Quote
If  the  name  was the last link to a file but any processes still have
the file open the file will remain in existence  until  the  last  file
descriptor referring to it is closed.


In Deinem urspruenglichen Code wird die Datei allerdings nach dem Unlinken geoeffnet. Das sollte nie gehen.\n\n

<!--EDIT|betterworld|1181186595-->

View full thread Löschen mit unlink