Beiträge mit dem Stichwort ‘Verzeichnis’

PHP: Probleme mit Datei Upload unter Windows

Veröffentlicht am 9. November 2010 um 08:45 by Fabian Martin Permalink

Nachdem ich vor ein paar Tagen, im Rahmen des „Developers Shame Day“, in meiner Giftgrube gewühlt  und ein Code Schnipsel aus vergangenen Tagen veröffentlicht habe, kommt der heutige Beitrag wieder aus der Richtung „Was mache ich, wenn … ?“.

Während den Arbeiten an einem Projekt, testen wir die Seiten nicht nur mit verschiedenen Browsern, sondern auch mit verschiedenen Server Betriebssystemen. Wir wollen so gewährleisten, dass der Kunde einen Server seiner Wahl nutzen kann, ohne auf ein Feature verzichten zu müssen.

Ein Kollege sprach mich, nach solch einem Testlauf, darauf an, dass er Probleme mit Dateien hat, die er mittels Datei Upload in sein Windows Testsystem lädt. Beim Zugriff auf diese Dateien, wird er von Windows darauf aufmerksam gemacht, das er nicht die benötigten Rechte dazu besitzt.
weiterlesen »

SVN: The file or directory is corrupted and unreadable.

Veröffentlicht am 11. Oktober 2010 um 22:01 by Fabian Martin Permalink

Can’t move ‘.svn/tmp/entries’ to ‘.svn/entries’: The file or directory is corrupted and unreadable.

Wenn ihr diese oder eine ähnliche Meldung schon einmal gesehen habt, liege ich wahrscheinlich richtig, wenn ich behaupte, dass ihr Windows 7 oder eines der aktuellen Windows Serverbetriebssysteme im Einsatz habt.

Anders als die Meldung andeutet, ist die Datei aber weder beschädigt noch unlesbar, sie wurde lediglich vom System gesperrt, weil derzeit ein anderes Programm darauf zugreift. In einer Zeit vor Windows 7 lag es meist an Virenscannern, die Ihre Aufgabe erledigten und die Datei gescannt haben.

Seit Windows 7 hat aber meist der Indizierungsdienst schuld an der Meldung. Während ihr noch am ein- oder auschecken seid, versucht er eine Datei zu analysieren und blockiert sie dadurch. SVN kann die Datei deswegen nicht mehr öffnen, und bricht mit der bekannten Fehlermeldung ab.

Um Abhilfe zu schaffen, reicht es euren Projektordner aus der Liste der zu indizierenden Verzeichnisse zu nehmen. Öffnet hierzu euer Startmenü,  gebt in das Suchfeld Indizierung ein und bestätigt die Eingabe mit Enter. Es sollte sich ein Fenster mit dem Titel Indizierungsoptionen geöffnet haben.  Geht hier auf Ändern und sucht im neuen Fenster nach eurem Projektordner. Entfernt das Häkchen davor und bestätigt die Änderungen mit Enter.

Das Problem sollte sich nun erledigt haben, und jede neue Aktion mit Subversion sollte ohne Probleme vonstatten gehen.

Python: Verzeichnis rekursiv leeren

Veröffentlicht am 3. Mai 2010 um 22:56 by Fabian Martin Permalink

Mit dem folgenden Code Schnipsel kann man in Python ein Verzeichnis rekursiv leeren. Abhängig davon ob es sich um eine Datei, ein Verzeichnis oder eine Verknüpfung handelt, wird die entsprechende Methode zum entfernen aufgerufen.

for pathentry in os.walk('/path/to/dir', False):
	for dir in pathentry[1]:
		path = os.path.join(pathentry[0], dir)
		if os.path.islink(path):
			os.unlink(path)
		else:
			os.rmdir(path)

	for file in pathentry[2]:
		path = os.path.join(pathentry[0], file)
		os.unlink(path)

Möchte man das Hauptverzeichnis anschließend auch noch löschen, reicht ein simples

os.rmdir('/path/to/dir');