the4rk
Goto Top

Mit einer Batchdatei Ordner einer Netzwerkfestplatte suchen und löschen

Ich möchte von einer in einem Netzwerkverfügbaren Festplatte via einer Batch-Datei einen Ordner suchen und löschen lassen

Hallo liebe Community

Ich möchte ein Batchdatei schreiben, die mir von unserer über ein Netzwerk verbunde Festplatte(P) einen Ordner sucht und diesen löscht.
Dabei suche Ich Hilfe und habe diesbezüglich zwei Fragen

Aber ersteinmal zu den mir bekannten Sequenzen:
Das Programm sollte am besten auch die unterordner durchsuchen...
Das alles soll eine Schleife werden, was allerdings nicht das Problem ist da dies mit:
:A
...
goto A
leicht zu lösen ist.

Die Zeitverzögerung für diese habe Ich auch schon (x=Zeitvariable):
ping /n x localhost >nul
und der Löschbefehl (del mit den passenden Variablen wie z.B. /F /Q usw.) ist mir auch schon bekannt.

Und nun zu den Fragen:

Frage 1.:
Welchen Befehl/Kommando benötige ich (auch bitte mit den passenden Variablen) um den Pfad herauszufinden und ihn dann dem "Löschteil" des Programms mitzuteilen oder einzufügen?
und
Frage 2.:
Wie füge dich diese Teile dann passend zu sammen?

Mfg the4rk
Kommentar vom Moderator Biber am Feb 17, 2012 um 17:42:12 Uhr
Wie füge dich diese Teile dann passend zu sammen?
Irgendwie witzig, das Wort "zu sammen" so "aus ein ander" geschrieben so lesen... *gg

Schönes Woch en ende
Bi ber

Content-Key: 180700

Url: https://administrator.de/contentid/180700

Printed on: April 24, 2024 at 01:04 o'clock

Member: pieh-ejdsch
pieh-ejdsch Feb 17, 2012 at 16:17:44 (UTC)
Goto Top
mopin the4rk,

schau mal auf dieser Seiter weiter unten gibt es Wissensbeiträge zum Thema

Gruß Phil
Member: bastla
bastla Feb 17, 2012 at 19:20:58 (UTC)
Goto Top
... und erkläre im Zweifelsfall vielleicht auch noch, was für Dich das "Löschen" eines Ordners bedeutet (das angesprochene "del" ist nur für Dateien "zuständig").

BTW: Welchen Zweck soll die "Zeitverzögerung" haben?

Und schließlich: Es lässt sich zwar mit "goto" eine Schleife produzieren -die Frage wäre allerdings, wie Du aus dieser wieder heraus kommst ...

Grüße
bastla
Mitglied: 60730
60730 Feb 17, 2012 at 19:23:34 (UTC)
Goto Top
Moin,

und weil aller guten Dinge 3 sind (Biber mal aussen vor lass end)

  • Para Meter und Var iablen sind zwei unterschiedliche paar Socken.
Member: the4rk
the4rk Feb 18, 2012 at 11:47:58 (UTC)
Goto Top
Dankeschön für die vielen schnellen Antworten face-smile
also der reihe nach:

@pieh-ejdsch: wo genau meinst du auf dieser seite ?
das mit dem löschen hat mit einer in einem anderen thread geposteten befehl auch ganz gut funktioniert, bis ich dann den pfad (von lokal auf netzwerk) umgestellt habe, dann ist sie immer sofort geschlossen worden...
habe mich dann auf fehler suche begeben, doch ihn nicht gefunden...
aber danke dir wäre nett wenn du mir einen link oder ähnliches hinterlassen könntest...

@bastla: diese batch soll das hochladen von ungewollten daten verhindern, da sehr viele leute darauf zugreifen können und somit die "neuen" datein nach bestimmten durchsocht werden sollen...
und ich will aus dieser nicht mehr herauskommen, denn das programm werde ich in meinen autostart hängen und sobald ich diesen pc starte soll er (P) durchsuchen
ok danke für den hinweis auf das löschen ... wie lösche ich denn einen ganzen ordner?
Mfg the4rk

@timobeil: ok dnake für die info face-smile
Member: the4rk
the4rk Feb 18, 2012 at 12:11:55 (UTC)
Goto Top
oh danke Morderator Bi ber face-smile
wäre mir so nst nicht au fgef all en...
dir auch (zum Thema Wochenende)
Member: bastla
bastla Feb 18, 2012 at 12:19:22 (UTC)
Goto Top
Hallo the4rk!

Da Du auch Unterordner suchen und löschen wolltest:
@echo off & setlocal
set "Ordner=Ordnername"  
:A
echo rd /s /q "P:\%Ordner%"  
for /f "delims=" %%i in ('dir /s/b/ad "P:\%Ordner%"') do echo rd /s/q "%%i"  

::ping /n x localhost >nul
goto :A
Zum Testen stehen vor den Löschbefehlen (rd) jeweils noch echo - erst wenn Du letztere entfernst, werden die Ordner tatsächlich gelöscht.

Grüße
bastla
Member: the4rk
the4rk Feb 18, 2012 at 15:45:25 (UTC)
Goto Top
Danke bastla
ich bin mir gerade nicht sicher: wo muss ich den Ordnernamen einfügen?
wo jetzt "Ordnername'" steht?
ich werde es leider erst in einer Woche Testen können und euch dann natürlich ein feedback geben...
aber danke schonmal im vorraus face-smile

Mfg the4rk
Member: bastla
bastla Feb 18, 2012 at 15:48:17 (UTC)
Goto Top
Hallo the4rk!
ich bin mir gerade nicht sicher: wo muss ich den Ordnernamen einfügen?
wo jetzt "Ordnername'" steht?
Fiele Dir ein besserer Platz dafür ein? face-wink

Außerdem kannst Du (wegen der beiden "echo") ja ohnehin gefahrlos testen [Edit] und dabei auch gleich Deine Zusatzfrage unten selbst beantworten [/Edit] ...

Grüße
bastla
Member: the4rk
the4rk Feb 18, 2012 at 15:49:45 (UTC)
Goto Top
Zitat von @the4rk:
Danke bastla
mir ist aber gerad aufgefallen, das bei goto A keine : mehr dabei sein darf/muss habe mich schon des öfteren an solchen schleifen probiert und es war immer ohne : oder ist das egal?
ich bin mir gerade nicht sicher: wo muss ich den Ordnernamen einfügen?
wo jetzt "Ordnername'" steht?
ich werde es leider erst in einer Woche Testen können und euch dann natürlich ein feedback geben...
aber danke schonmal im vorraus face-smile

Mfg the4rk
Member: pieh-ejdsch
pieh-ejdsch Feb 18, 2012 at 16:22:13 (UTC)
Goto Top
moin the4rk,

das bei goto A keine : mehr dabei sein darf/muss habe mich schon des öfteren an solchen schleifen probiert und es war immer ohne : oder ist das egal?

Es hat nur einen Dekorativen Zweck.
Da beim call in eine Sprungmarke Doppelpunkte verwendet werden müssen, wesentlich um von einem Programm zu unterscheiden,
wird der führende Doppelpunkt - der Lesbarkeit wegen - für ein goto :Marke genauso verwendet.

Somit siehst Du im Batch die Stellen von wo aus die Marke aufgerufen wird besser.

Gruß Phil
Member: the4rk
the4rk Feb 28, 2012 at 09:31:30 (UTC)
Goto Top
also...
es funktioniert ganz gut, allerdings hat es nun auch alle oberordner gelöscht, in denen sich der zu suchende Ordner befindet...somit sind einige wichtige Daten leider verlorengegangen...
Member: pieh-ejdsch
pieh-ejdsch Feb 28, 2012 at 15:03:38 (UTC)
Goto Top
moin the4rk,

ja ne nu aber:
Daher werden solch Löschbädsche vor dem Hinkritzeln mit dem Sicherungssplint versehen.
Zitat von @bastla:
Zum Testen stehen vor den Löschbefehlen (rd) jeweils noch echo - erst wenn Du letztere entfernst, werden die Ordner tatsächlich gelöscht.
Außerdem kannst Du (wegen der beiden "echo") ja ohnehin gefahrlos testen

somit sind einige wichtige Daten leider verlorengegangen...
Das Reziproke von wichtigen Daten ist Datenverlust.
Demnach hast Du in Deiner Sicherung die wichtigsten davon noch mal zur Sicherheit...

Gruß Phil
Member: bastla
bastla Feb 28, 2012 at 16:49:06 (UTC)
Goto Top
Hallo the4rk!

Zum Thema
somit sind einige wichtige Daten leider verlorengegangen...
hat PH eigentlich schon alles gesagt; es bleibt aber die Frage offen, was Du mit "oberordner" meinst? Mein Batchansatz sucht, beginnend in "P:\", nach allen Ordnern mit dem angegebenen Namen und löscht diese dann inkl Unterordnern ...

Grüße
bastla
Member: the4rk
the4rk Mar 02, 2012 at 10:55:05 (UTC)
Goto Top
Danke schön an euch beide face-smile
mein problem mit dem Datenverlust hatte einen anderen hintergrund(das habe ich allerding erst später bemerkt).
Unser Netzwerk spinnt zur Zeit, wodurch der verlust zustande gekommen ist ...
der Begriff "Oberordner" war wohl etwas unglücklich gewählt...
Ich meinte damit das er alle Ordner + Unterordner durchsucht, was er ja sowieso macht face-smile
dachte durch den datenverlust nur, das es die batch war die diese gelöscht hat

war sie aber nicht und so passt alles face-wink
ich teste hier noch ein bisschen und wenn ihr in einer Woche nichts mehr von mir hört, kann das thema als gelöst makiert werden.
wenn ich das nicht schon früher erledige face-smile

Ich danke euch für eure schnelle und sehr präzise Hilfe und werde mir ein beispiel meinerseits nehmen face-smile

Mfg the4rk