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

Frage Entwicklung Batch & Shell

GELÖST

Bestimmte Wörter in Dateinamen suchen

Mitglied: matze-pe

matze-pe (Level 1) - Jetzt verbinden

28.09.2011, aktualisiert 11:19 Uhr, 3417 Aufrufe, 8 Kommentare

Hallo,
ich habe ein Skript mir zusammen gebaut, der mir alle Dateien und Ordner die älter ein Tag sind automatisch löscht.

Jetzt möchte ich das erweitern, und weiß nicht so richtig wie ich das machen soll.

Es sollen alle Dateien und Ordner durchsucht werden, wenn im Dateinamen das Wort "nicht löschen" vorkommt soll die Datei vom Skript nicht gelöscht werden.


Anbei mein Skript ohne Abfrage nach dem Wort "nicht löschen":


for /R "C:\skript\transfer" %%i in (*.*) do @echo %%~ti|find "%date%"||@echo %%~ti|find "%gestern%"|| del "%%~dpnxi"
for /D %%i in (C:\skript\transfer\*.*) do @echo %%~ti|find "%date%"||@echo %%~ti|find "%gestern%"|| rd /s /q "%%i"

for /F "delims=" %%i in ('dir /b /s /ad C:\skript\transfer') do rd "%%i" 2>NUL




Ich habe es schon mit einer IF-Abfrage erweitert, aber das haut so nicht hin:


IF "%1" == "nicht löschen"
(
ECHO %1 nicht löschen
pause
)
else
(
for /R "C:\skript\transfer" %%i in (*.*) do @echo %%~ti|find "%date%"||@echo %%~ti|find "%gestern%"|| del "%%~dpnxi"
for /D %%i in (C:\skript\transfer\*.*) do @echo %%~ti|find "%date%"||@echo %%~ti|find "%gestern%"|| rd /s /q "%%i"

for /F "delims=" %%i in ('dir /b /s /ad C:\skript\transfer') do rd "%%i" 2>NUL
pause
)





Vielen Dank im vorraus


mfg
Mitglied: bastla
28.09.2011 um 11:24 Uhr
Hallo matze-pe!

Mit einem an passender Stelle platzierten
findstr /i /c:"nicht löschen"
sollte das doch eigentlich kein Problem sein (wobei ich aber eher bei der übergeordneten Schleife ansetzen und
findstr /v /i /c:"nicht löschen"
verwenden würde) ...

Grüße
bastla

[Edit] @skye: http://www.administrator.de/helpsystem/detail.php?idx=20#toc23 [/Edit]
Bitte warten ..
Mitglied: Skyemugen
28.09.2011 um 11:26 Uhr
Aloha,

  • 1. Wir haben hier gar lustige <code></code>-Tags, diese bitte zum Wohle unserer Augen benutzen, danke
  • 2. Schon einmal daran gedacht, die Abhandlung |findstr /V /i /c:"nicht löschen" an passender Stelle zu erweitern

greetz André

edit: too late
Bitte warten ..
Mitglied: matze-pe
28.09.2011 um 11:36 Uhr
Stimmt :D Danke es klappt.

Manchmal sieht man den Wald vor lauter Bäumen nicht :D
Bitte warten ..
Mitglied: matze-pe
28.09.2011 um 11:53 Uhr
Eins fehlt mir noch ein, wenn welche im Dateinamen z.B. "nicht loeschen" oder nur "NL" reinschreiben, anstatt "nicht löschen" wie erweitere ich denn den findstr?

Habe es jetzt so gelöst, klappt aber nicht


01.
   for /R "C:\skript\transfer" %%i in (*.*) do @echo %%~ti|findstr /V /i /c:"nicht löschen nl loeschen"|find "%date%"||@echo %%~ti|find "%gestern%"|| del "%%~dpnxi" 
02.
   for /D %%i in (C:\skript\transfer\*.*) do @echo %%~ti|findstr /V /i /c:"nicht löschen nl loeschen"|find "%date%"||@echo %%~ti|find "%gestern%"|| rd /s /q "%%i" 
03.
 
04.
   for /F "delims=" %%i in ('dir /b /s /ad C:\skript\transfer') do rd "%%i" 2>NUL
Wenn ich zweimal |findstr /V /i /c:"nicht löschen" und |findstr /V /i /c:"nicht loeschen" hintereinander schreibe, passiert auch nichts.
Bitte warten ..
Mitglied: bastla
28.09.2011 um 12:10 Uhr
Hallo matze-pe!

Versuch es damit:
Erstelle eine Textdatei (zB "D:\NL.txt"), schreibe jeden Begriff in eine eigene Zeile und ändere
findstr /v /i /c:"nicht löschen nl loeschen"
auf
findstr /v /i /g:"D:\NL.txt"
Grüße
bastla
Bitte warten ..
Mitglied: matze-pe
28.09.2011 um 12:29 Uhr
Hallo,
geht leider nicht, es werden alle Ordner gelöscht, bis auf ein "nicht löschen" Ordner, dort wurden aber alle Unterordner gelöscht. Alle anderen Bedingungen werden nicht angenommen.

Bei Dateien klappt es.

01.
   for /R "C:\skript\transfer" %%i in (*.*) do @echo %%~ti|findstr /v /i /g:"C:\skript\NL.txt"|find "%date%"||@echo %%~ti|find "%gestern%"|| del "%%~dpnxi" 
02.
   for /D %%i in (C:\skript\transfer\*.*) do @echo %%~ti|findstr /v /i /g:"C:\skript\NL.txt"|find "%date%"||@echo %%~ti|find "%gestern%"|| rd /s /q "%%i" 
03.
 
04.
   for /F "delims=" %%i in ('dir /b /s /ad C:\skript\transfer') do rd "%%i" 2>NUL

NL.txt
01.
nicht löschen 
02.
nicht loeschen 
03.
nl


mfg
Bitte warten ..
Mitglied: Skyemugen
28.09.2011 um 16:42 Uhr
Aloha,

... mal eine Nachfrage, wo soll er denn nicht löschen in der Ausgabe
28.09.2011 11:25 
28.09.2011 08:33 
28.09.2011 16:36
a.k.a. echo %%~ti finden?

Wenn dann würde er sie wohl nur bei echo %%i finden

greetz André

P.S.: @bastla
[Edit] @skye: http://www.administrator.de/helpsystem/de ... face-wink [/Edit]
I know aber dann vermisse ich die schwarzen Murmeln, die mehr Aufmerksamkeit geben als 1. und 2. their own
Bitte warten ..
Mitglied: bastla
28.09.2011 um 18:37 Uhr
@skye
wo soll er denn nicht löschen in der Ausgabe 28.09.2011 11:25 ... finden?
Jetzt wo Du's sagst ...

Ich hatte mich zwar über "%1" gewundert, dann aber nicht wirklich Zeit, mich ausreichend damit zu beschäftigen - deshalb auch nur die Aufforderung, eine passende Stelle für den "findstr"-Teil zu wählen ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Windows Server
Kann man bestimmte Wörter in den Kennwortrichtlinien sperren?
Frage von AndreasOCWindows Server3 Kommentare

Hallo zusammen, bestimmte Mitarbeiter bei uns nutzen nicht gerade sichere Kennwörter, obwohl ich "Komplexitätsvorraussetzunhrn" aktiviert habe. Habe ich eine ...

Windows Userverwaltung
Bestimmte Wörter für Benutzerpasswörter blocken
gelöst Frage von CortaXWindows Userverwaltung8 Kommentare

Hallo Leute, Gibt es eine Möglichkeit, dass ich bestimmte Wörter blockiere damit diese nicht als User Kennwort eingesetzt werden? ...

Batch & Shell
Wort in Textdatei suchen
gelöst Frage von Nick.BBatch & Shell4 Kommentare

Ich wollte ein einzelnes Wort aus einer Textdatei suchen und als Variable speichern. Allerdings ist das Wort nicht das ...

Microsoft
Suche und Ersetzen im Dateinamen mit Wildcard?
gelöst Frage von GottfriedKernMicrosoft5 Kommentare

Ich suche ein Programm, dass Dateinamen durchsucht und mittels Platzhalter ersetzen kann. Beispiel: toller - sound (2002).mp3 soll in ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 2 StundenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 20 StundenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 21 StundenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 22 StundenSicherheit9 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von 92943Windows 1031 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Netzwerkgrundlagen
Welches Modem für VDSL 50000 der T-Com
gelöst Frage von Windows10GegnerNetzwerkgrundlagen21 Kommentare

Hallo, ein Kollege von mir will sich VDSL50000 von der T-Com holen, um daran einen Server zu betreiben. Ich ...

Sicherheit
Meltdown und Spectre: Die machen uns alle was vor
Information von FrankSicherheit18 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Netzwerke
Packet loss bei "InternetLeitungsvollauslastung"
gelöst Frage von Freak-On-SiliconNetzwerke17 Kommentare

Servus; Ja der Titel klingt komisch, is aber so. Wenn die Internetleitung voll ausgelastet ist, hab ich extreme packet ...