Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Batch - Suche und Löschen

Mitglied: LordAsriel

LordAsriel (Level 2) - Jetzt verbinden

29.01.2007, aktualisiert 12:51 Uhr, 7054 Aufrufe, 8 Kommentare

Moin,

Hab volgende Aufgabe bekommen.

Ich soll eine Batch datei erstellen die alle Verzeichnisse der Festplatte (nach einer bestimmten Datei) durchsucht die aber vorher nicht bekannt sind (Batch muss selbst alle Verzeichnisse erkennen). Wenn dann diese Datei existiert soll sie gelöscht werden. Die Dateien können auch in mehreren verzeichnissen liegen.

Das überprüfen könnte man ja mit IF EXIST realiesieren aber der rest?

Würde mich echt freuen wenn ihr mir da helfen könntet

Danke & MfG
Mitglied: bastla
29.01.2007 um 11:47 Uhr
Hallo HackerX!

Versuch mal (als Batch-Datei "Loesche.bat" speichern)
01.
for /f "delims=" %%i in ('dir /s /b %1') do @echo del "%%i"
Mit dem @echo drinnen wird nicht wirklich gelöscht, sondern es erfolgt nur eine Anzeige. Aufgerufen wird die Batch-Datei zB so:
01.
Loesche D:\Test.txt
Durch das /s wird auch in allen Unterverzeichnissen von D: gesucht und jedes Vorkommen der Datei "Test.txt" gelöscht.

Grüße
bastla
Bitte warten ..
Mitglied: Biber
29.01.2007 um 11:51 Uhr
Moin HackerX,

Beispiel mit der sehr beliebten "desktop.ini" (vom CMD-Prompt):
01.
>for /f "delims=" %i in ('dir /b /a-hh /s "\desktop.ini"') do @ECHO del "%i"
Als Batch mit Parameter "Such-Dateiname":
01.
::------------snipp HauWechAlle.bat
02.
@for /f "delims=" %%i in ('dir /b /a-hh /s %*') do @ECHO @del "%%i"
Das GROSS geschriebene ECHO zum Scharf-Machen entfernen.
Im Falle der Batchdatei beachten: Parameter "Such-Dateiname" kann auch den Start-Pfad beinhalten.
HauWechAlle index.dat ---------> löscht alle index.dat angefangen vom aktuellen Verzeichnis.
HauWechAlle \index.dat ---------> löscht alle index.dat angefangen vom aktuellen Laufwerk\Verzeichnis Root.
HauWechAlle d:\temp\index.dat F:\Firlefanz.exe ---------> löscht alle index.dat unterhalb D:\temp und alle Firlefanz.exe vom F: Laufwerk\Verzeichnis Root.

HTH
Biber
Bitte warten ..
Mitglied: LordAsriel
29.01.2007 um 12:00 Uhr
Schönen Dank euch beiden werd ich gleich mal probieren
Bitte warten ..
Mitglied: LordAsriel
29.01.2007 um 12:09 Uhr
Eine Sache hab ich noch enn ich bei

for /f "delims=" %%i in ('dir /s /b %1') do @echo del "%%i"

statt hinter dem do das del zu machen, ein GOTO ENF mache und weiter unten dann halt ein :ENF setze und das das del einbaue und da noch ausgeben möchte in welchem Pfad ich die gerade gelöschte datei gefunden hab ist das möglich und wenn ja wie?

/EDIT

Wenn ich feste Dateinamen hab setz ich die einfach statt %%i ein oder und wie kann ich schon in der Batch den startpfad festlegen?

/EDIT
Bitte warten ..
Mitglied: bastla
29.01.2007 um 12:39 Uhr
ausgeben möchte in welchem Pfad ich die gerade gelöschte datei gefunden hab
dann:
01.
:ENTF
02.
echo %~dp1
Wenn ich feste Dateinamen hab setz ich die einfach statt %%i ein oder und wie kann ich schon in der Batch den startpfad festlegen?
Wie im Beispiel oben (gerade auch voni Biber) gezeigt, kannst Du den Dateinamen samt Laufwerk bzw auch mit Pfad dazwischen verwenden (dann wird nur in und unterhalb dieses Pfades gesucht), also beim Aufruf oder statt %1 eintragen: D:\ADM\Test.txt

Das %%i enthält übrigens nacheinander die gefundenen Dateien (samt Pfad).

Grüße
bastla

@Biber
Musstest Du das schon wieder so vorbildlich machen?
Bitte warten ..
Mitglied: LordAsriel
29.01.2007 um 12:41 Uhr
Danke stimmt das mit dem %1 hab ich auch gerade bei nem Tutorial nochmal gelesen

/EDIT

Das mit dem del "%%i" kann ich aber dann auch so in die :ENF schreiben oder?

:ENF
echo %~dp1
del "%%i"

/EDIT
Bitte warten ..
Mitglied: Biber
29.01.2007 um 12:44 Uhr
Moin HacherX,

Frage a)
01.
@echo off
02.
for /f "delims=" %%i in ('dir /s /b %1') do @call:ENF "%%i"
03.
goto :eof
04.
:ENF Parameter 1: Qualifizierender Dateiname in Anführungszeichen
05.
echo Datei %~nx1 gefunden in %~dp1
06.
 ECHO del "%1"
07.
goto :eof
Frage b)
fester Startpfad:
for /f "delims=" %%i in ('dir /s /b d:\temp\%1') do @call:ENF "%%i"
fester Startpfad und Dateiname:
for /f "delims=" %%i in ('dir /s /b d:\temp\blablubb.txt') do @call:ENF "%%i"

Gruß
Biber
[Edit]
@bastla
Musstest Du das schon wieder so vorbildlich machen?
Musstest Du es wieder so schnell machen? Da kommen ältere Leute wie ich gar nicht mit...
[/Edit]
Bitte warten ..
Mitglied: LordAsriel
29.01.2007 um 12:51 Uhr
Danke noch mal
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Wlan-adapter such algorithmus in batch
gelöst Frage von TicoWriteBatch & Shell7 Kommentare

Hallo zusammen, Ich möchte einen Wlan-adpater such algorithmus in batch erstellen, dazu fehlt mir aber der befehl in Dos. ...

Exchange Server
Such-Index nach Neuerstellung defekt
Frage von CoverianExchange Server

Guten Morgen zusammen, wir haben hier aktuell ein Problem das mir schlaflose Nächte bereitet. Es handelt sich um einen ...

Video & Streaming

Such möglichkeit metadaten aus avi (bspw. den titel) zu entfernen (als batch file)

Frage von freeuser616Video & Streaming7 Kommentare

hallo zusammen, leider werde ich einfach nicht fündig. ich habe noch einiges an avi Dateien in meiner Sammlung, wo ...

Exchange Server

Exchange-Fehler: 550 No such recipient here

gelöst Frage von GreysonExchange Server3 Kommentare

Hallo administrator.de, habe seit heute an meinem Exchange die Fehlermeldung: #550 No such recipient here Diese Meldung erhalte ich ...

Neue Wissensbeiträge
iOS
WatchChat für Whatsapp
Tipp von Criemo vor 21 StundeniOS

Ziemlich coole App für WhatsApp User in Verbindung mit der Apple Watch. Gibts für iOS sowohl als auch für ...

iOS
IOS hat nen Cursor !!!
Tipp von Criemo vor 1 TagiOS5 Kommentare

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Off Topic
Avengers 4: Endgame - Erster Trailer
Information von Frank vor 3 TagenOff Topic2 Kommentare

Ich weiß es ist Off Topic, aber ich freue mich auf diesen Film und vielleicht geht es anderen hier ...

Webbrowser
Microsoft bestätigt Edge mit Chromium-Kern
Information von Frank vor 3 TagenWebbrowser5 Kommentare

Microsoft hat nun in seinem Blog bestätigt, dass die nächste Edge Version kein EdgeHTML mehr für die Darstellung benutzen ...

Heiß diskutierte Inhalte
Exchange Server
Exchange Server 2010: Keine Eingehenden E-MAils
gelöst Frage von gabeBUExchange Server17 Kommentare

Hallo Zusammen Ich habe das kurzen auf dem Exchange 2010 Server das Problem, dass ich keine externen E-Mails mehr ...

Server
Server in zwei verschiedene Netzwerke einbinden
gelöst Frage von BennyFServer13 Kommentare

Hallo zusammen, bei uns im Haus sind im Erdgeschoss die Geschäftsräume und ab dem 1. Stock sind unsere privaten ...

Windows Netzwerk
Kerio. Kann keine Mails empfangen aber senden. Wer ist schuld. Kerio oder Windows domäne?
Frage von frosch2Windows Netzwerk13 Kommentare

Hallo, es existiert ein Problem bei uns mit dem mailen. Alle bestehenden Nutzer können mailen. Raus wie rein. Neuen ...

Netzwerkmanagement
Ticketsystem für eine Kommune gesucht
gelöst Frage von akovisNetzwerkmanagement11 Kommentare

Ich suche aktuell ein Ticketsystem für eine Kleinstadt von 13000 Einwaohnern. Das System soll alle Anfragen aus verschiedenen Kanälen ...