Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Alle Daten löschen (mit Ausnahmen) (https://www.delphipraxis.net/42627-alle-daten-loeschen-mit-ausnahmen.html)

sunshine-girl87 21. Mär 2005 20:37


Alle Daten löschen (mit Ausnahmen)
 
Hi,

gibt es einen Code mit dem ich alle Dateien außer project1.exe und zb. project2.exe löschen kann, oder muss ich das selbst irgendwie dem Computer klar machen?

Binärbaum 21. Mär 2005 20:58

Re: Alle Daten löschen (mit Ausnahmen)
 
Also ich kenne so einen Befehl nicht.
Du könntest ja mit [oh]FindFirst, FindNext, FindClose[/oh] die Dateien suchen, und wenn die jeweilige Datei nicht deinen Kriterien entspricht, wird sie halt gelöscht.

MfG
Binärbaum

PS: Ich hoffe, du meinst nicht wirklich ALLE Dateien löschen, den Windows-/ Systemordner sollte man schon noch auf der Festplatte lassen, damit man dein Programm auch noch ausführen kann :mrgreen:

BKempf 21. Mär 2005 21:00

Re: Alle Daten löschen (mit Ausnahmen)
 
Zitat:

Zitat von sunshine-girl87
Hi,

gibt es einen Code mit dem ich alle Dateien außer project1.exe und zb. project2.exe löschen kann, oder muss ich das selbst irgendwie dem Computer klar machen?

Wenns auch eine Batchdatei sein darf und die Namen der zu rettenden Dateien fest sind, würde ichs so machen:
Code:
rem ungetestet
md bla
move project1.exe bla
move project2.exe bla
del *.*
move bla\*.* .
rd bla

TheMiller 22. Mär 2005 22:27

Re: Alle Daten löschen (mit Ausnahmen)
 
Hi,

habe jetzt folgenden Code. Doch wenn ich "del" ausführe, werde ich gefragt, ob ich wirklich alle Daten löschen will.

Delphi-Quellcode:
REM CommandInterpreter: $(COMSPEC)
cd\
cd Compilierte Projekte\project1
md temp
move project1.exe temp
move project2.exe temp
del *.*
j
move \temp\*.* .
rd temp
Dies, so dachte ich, gibt autom. ein "j" ein. Das macht er auch, löscht alle Daten, fragt aber dennoch (danach), ob ich alles löschen will. Wäre doch eh zu spät. Und dann schiebt er die Daten nicht wieder in den Stammordner...

Was ich damit sagen will... ICh bräuchte noch ein bissl HIlfe

Luckie 22. Mär 2005 22:55

Re: Alle Daten löschen (mit Ausnahmen)
 
Gib mal del /? in der Konsole ein...

Lannes 22. Mär 2005 23:01

Re: Alle Daten löschen (mit Ausnahmen)
 
Hallo,

oder mit dem Explorer:

1. Dateiliste sortieren nach Typ
2. *.exe Markieren
3. Menübefehl "Markierung umkehren"
4. Die dann Markierten löschen.

Schneller als eine Batch zu schreiben,oder :?:

BKempf 22. Mär 2005 23:16

Re: Alle Daten löschen (mit Ausnahmen)
 
Zitat:

Zitat von DJ-SPM
habe jetzt folgenden Code. Doch wenn ich "del" ausführe, werde ich gefragt, ob ich wirklich alle Daten löschen will.

Das kannst du umgehen, indem du das 'j' per Pipe übergibst oder aus einer eigens erstellten Datei liest:
Code:
echo j|del *.*
oder
Code:
echo j>j.tmp
del *.*<j.tmp
Das solltest du allerdings nur tun, wenn du sicher bist, im richtigen Verzeichnis zu sein, sonst knirscht es u.U. gewaltig.


Code:
REM CommandInterpreter: $(COMSPEC)

rem X ist das aktuelle Laufwerk
cd\
rem Arbeitsverzeichnis: X:\

cd Compilierte Projekte\project1
rem Arbeitsverzeichnis: X:\Compilierte Projekte\project1
rem Möglicherweise muß der Pfad in Anführungszeichen gesetzt werden: cd "Compilierte Projekte\project1",
rem sonst verschluckt sich der Kommando-Interpreter am Leerzeichen.

md temp
rem Erstelle X:\Compilierte Projekte\project1\temp

move project1.exe temp
move project2.exe temp

del *.*
rem Lösche alle Dateien in X:\Compilierte Projekte\project1
rem Hier passiert schon die Rückfrage und anschließend das Löschen...

j
rem ... mit dem ein Befehl namens "j" schon nichts mehr zu tun hat. (s.o.)

move \temp\*.* .
rem Verschiebe alle Dateien aus X:\temp nach X:\Compilierte Projekte\project1.
rem Hier ist der Fehler, der das Zurückschieben der geretteten Dateien verhindert, denn es müßte heißen:
rem move temp\*.* .

rd temp
Zitat:

Zitat von DJ-SPM
Dies, so dachte ich, gibt autom. ein "j" ein. Das macht er auch, löscht alle Daten, fragt aber dennoch (danach), ob ich alles löschen will. Wäre doch eh zu spät.

Das "danach" würde ich nicht unterschreiben, s.o.. Ich sehe das so, daß er ordentlich nachfragt, gegebenenfalls die Dateien löscht und danach wahrscheinlich etwas ausgibt wie "Befehl oder Datei nicht gefunden", es sei denn, du hast ein Kommando "j" zur Verfügung.

Zitat:

Und dann schiebt er die Daten nicht wieder in den Stammordner...
Das lag am führenden Backslash "\".

TheMiller 22. Mär 2005 23:42

Re: Alle Daten löschen (mit Ausnahmen)
 
Stimmt. Da muss ich dir Recht geben. Habe es dann auch bemerkt. Habe die ganze Sache allerdings so gelöst:

Delphi-Quellcode:
REM CommandInterpreter: $(COMSPEC)
cd\
cd Compilierte Projekte\project1
md temp
move project1.exe temp
move project2.exe temp

del /Q *.*
move temp\*.* .
rd temp
Das war's auch schon. Wenn noch Daten im Programm-Root liegen, hat der Typ, für den dies ist, PECH gehabt. Aber dies wird nicht vorkommen, da er nicht einmal weiß, wie er in den Ordner kommt, da er (fast) keine Ahnung von dem hat, was außerhalb seines Bereiches liegt. Kann ich ihm aber nicht übel nehmen... Man(n) muss ja nicht alles wissen...

Danke an alle.

Luckie 23. Mär 2005 00:35

Re: Alle Daten löschen (mit Ausnahmen)
 
Zitat:

Zitat von DJ-SPM
da er (fast) keine Ahnung von dem hat, was außerhalb seines Bereiches liegt. Kann ich ihm aber nicht übel nehmen... Man(n) muss ja nicht alles wissen...

Und das sind dann die Leute mit den größten Problem-Rechnern. :roll: Erklär ihm lieder was er da macht und wie es funktioniert.

TheMiller 23. Mär 2005 00:38

Re: Alle Daten löschen (mit Ausnahmen)
 
Habe ich schon versucht. Er ist so einer, der sich alles Buttons auf einen Zettel schreibt, die er drücken muss. Und wehe ein Button ist nicht genau an der Stelle, an der er es sich notiert hat... Er sieht (und will) die Strukturen garnicht sehen. Er will nur mit dem Programm arbeiten, das auf dem Desktop liegt.

Aber Luckie: Bezüglich den Problemrechnern hast du Recht...


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz