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

Per Batch nach neuen Ordnern suchen

Frage Entwicklung Batch & Shell

Mitglied: dhdesignz

dhdesignz (Level 1) - Jetzt verbinden

21.09.2010, aktualisiert 18:50 Uhr, 3071 Aufrufe, 9 Kommentare

Ich habe folgendes Problem.

Ich möchte eine Batch schreiben mit der ich nach bestimmten Ordnern suchen kann, die eventuell neu angelegt worden sind.

Z.b.: Es existiert ein Ordner A. In diesem Ordner sind die Ordner A1, A2 und A3. Diese drei Ordner haben Unterordner, die aber nicht ausgwertet werden müssen.

Es soll nun mit der Batch überprüft werden ob eventuell ein Ordner A4, A5... angelegt worden ist. Wenn ja soll dies in einer txt gespeichert werden. In diesem Beispiel gehen wir davon aus das Ordner A4 und A5 neu angelegt worden sind. Diese stehen nun in der txt. Vielleicht sogar mit Pfandangabe?

Beim nächsten Scan soll nur noch nach den Ordner neuer als A5 gesucht werden und wiederrum das Ergebnis ist die txt überschrieben werden.

Es geht darum zu überprüfen wechle Ordner neu angelegt worden sind und vorallem wann.

Ich hoffe jemand kann mir helfen.

Habe einige Sachen gefunden, aber nicht das was ich leider benötige.

Gruß
Dorian
Mitglied: bastla
21.09.2010 um 18:01 Uhr
Hallo dhdesignz und willkommen im Forum!

Du könntest es so versuchen:
01.
@echo off & setlocal 
02.
set "Ordner=D:\A" 
03.
set "Liste=%Ordner%\Ordnerliste.txt" 
04.
set "Neue=%Ordner%\Neu.txt" 
05.
 
06.
pushd "%Ordner%" 
07.
del "%Neue%" 2>nul 
08.
if not exist "%Liste%" type nul>"%Liste%" 
09.
for /f "delims=" %%i in ('dir /b /ad^|findstr /i /v /g:"%Liste%"') do for /f "tokens=1-2" %%a in ('dir /tc "%%i"^|findstr /c:"\.\."') do ( 
10.
    >>"%Neue%" echo %%a %%b %%i 
11.
    >>"%Liste%" echo %%i 
12.
13.
popd
Beim ersten Durchlauf wird im vorgegebenen Ordner lt Zeile 2 die Datei "Ordnerliste.txt" erzeugt und bei weiteren Batchläufen ergänzt. In "Neu.txt" (ebenfalls in diesem Ordner) stehen dann jeweils die Namen der neuen Ordner samt Erstellungsdatum (nach dem ersten Durchlauf natürlich alle zu diesem Zeitpunkt vorhandenen Ordner).

Es werden in dieser Version nur Ordner erfasst, die es vorher noch nicht gab - wurde also etwa A3 gelöscht und später wieder angelegt, wird dies nicht erkannt. Falls immer nur gegenüber dem vorigen Batchlauf verglichen werden soll, müsste die Zeile 11 entfernt und vor dem "popd" eine Zeile
>"%Liste%" dir /b /ad
eingefügt werden.

Grüße
bastla
Bitte warten ..
Mitglied: dhdesignz
21.09.2010 um 18:29 Uhr
Super. Danke. Werde das gleich ausprobieren. Ist es möglich eine Batch automatisiert auszuführen?
Bitte warten ..
Mitglied: bastla
21.09.2010 um 18:34 Uhr
Hallo dhdesignz!
Ist es möglich eine Batch automatisiert auszuführen?
Du meinst, so wie andere Geplante Tasks?

Grüße
bastla
Bitte warten ..
Mitglied: Biber
21.09.2010 um 18:35 Uhr
[OT]
Moin dhdesignz,
willkommen im Forum.

Zitat von dhdesignz:
...
einer txt gespeichert werden. In diesem Beispiel gehen wir davon aus das Ordner A4 und A5 neu angelegt worden sind.
Diese stehen nun in der txt. Vielleicht sogar mit Pfandangabe?
Das wird sehr,sehr kniffelig...
Welchen Wert sollen wir denn bei Einweg-Ordnern ansetzen?
Soll die Pfand-Ordnerrückgabe auch mit native Batch realisiert werden oder dürfen wir da auf eine höhere Programmiersprachen ausweichen?
Bätches sind nicht so geeignet zum Pfandbon-Drucken...

Aber sonst: eine der wohlformuliertesten Fragestellungen seit langem. Respekt.

Grüße
Biber
[/OT]
Bitte warten ..
Mitglied: dhdesignz
21.09.2010 um 18:49 Uhr
Zitat von Biber:
[OT]
Moin dhdesignz,
willkommen im Forum.

> Zitat von dhdesignz:
> ----
> ...
> einer txt gespeichert werden. In diesem Beispiel gehen wir davon aus das Ordner A4 und A5 neu angelegt worden sind.
> Diese stehen nun in der txt. Vielleicht sogar mit Pfandangabe?
Das wird sehr,sehr kniffelig...
Welchen Wert sollen wir denn bei Einweg-Ordnern ansetzen?
Soll die Pfand-Ordnerrückgabe auch mit native Batch realisiert werden oder dürfen wir da auf eine höhere
Programmiersprachen ausweichen?
Bätches sind nicht so geeignet zum Pfandbon-Drucken...

Aber sonst: eine der wohlformuliertesten Fragestellungen seit langem. Respekt.

Grüße
Biber
[/OT]

Bin selber leider nicht sehr versiert im Umgang mit Programmiersprachen. Es muss keine Batch sein. Dachte aber das dies die einfachste Lösung wäre.

Was meinst du mit: "Welchen Wert sollen wir denn bei Einweg-Ordnern ansetzen?"
Bitte warten ..
Mitglied: dhdesignz
21.09.2010 um 18:57 Uhr
Zitat von bastla:
Hallo dhdesignz und willkommen im Forum!

Du könntest es so versuchen:
01.
@echo off & setlocal 
02.
> set "Ordner=D:\A" 
03.
> set "Liste=%Ordner%\Ordnerliste.txt" 
04.
> set "Neue=%Ordner%\Neu.txt" 
05.
>  
06.
> pushd "%Ordner%" 
07.
> del "%Neue%" 2>nul 
08.
> if not exist "%Liste%" type nul>"%Liste%" 
09.
> for /f "delims=" %%i in ('dir /b /ad^|findstr /i /v /g:"%Liste%"') do for /f "tokens=1-2" 
10.
> %%a in ('dir /tc "%%i"^|findstr /c:"\.\."') do ( 
11.
>     >>"%Neue%" echo %%a %%b %%i 
12.
>     >>"%Liste%" echo %%i 
13.
> ) 
14.
> popd 
15.
> 
Beim ersten Durchlauf wird im vorgegebenen Ordner lt Zeile 2 die Datei "Ordnerliste.txt" erzeugt und bei weiteren
Batchläufen ergänzt. In "Neu.txt" (ebenfalls in diesem Ordner) stehen dann jeweils die Namen der neuen Ordner
samt Erstellungsdatum (nach dem ersten Durchlauf natürlich alle zu diesem Zeitpunkt vorhandenen Ordner).

Es werden in dieser Version nur Ordner erfasst, die es vorher noch nicht gab - wurde also etwa A3 gelöscht und später
wieder angelegt, wird dies nicht erkannt. Falls immer nur gegenüber dem vorigen Batchlauf verglichen werden soll, müsste
die Zeile 11 entfernt und vor dem "popd" eine Zeile
>"%Liste%" dir /b /ad 
> 
eingefügt werden.

Grüße
bastla
Bitte warten ..
Mitglied: dhdesignz
21.09.2010 um 19:02 Uhr
Leider funktioniert der Code nicht bei mir. Habe Testweise der Ordner A auf der Partition C: angelegt. Darin enthalten die Ordner A1, A2 und A3. Nach ausführen der Bat wird die Ordnerliste.txt erstellt, die aber leider leer bleibt. Nachdem ich weitere Ordner erstellt habe und die Bat erneut ausgeführt habe wurde die Neu.txt nicht angelegt. Die Ordnerliste.txt blieb leider weiterhin leer. Woran könnte es liegen? Könnte es an meinem 64Bit Windows 7 liegen?

Gruß
Dorian
Bitte warten ..
Mitglied: bastla
21.09.2010 um 20:04 Uhr
Hallo dhdesignz!
Könnte es an meinem 64Bit Windows 7 liegen?
Leider nicht daran, sondern am Batch ; so sollte es besser gehen:
01.
@echo off & setlocal 
02.
set "Ordner=C:\A" 
03.
set "Liste=%Ordner%\Ordnerliste.txt" 
04.
set "Neue=%Ordner%\Neu.txt" 
05.
 
06.
pushd "%Ordner%" 
07.
del "%Neue%" 2>nul 
08.
if not exist "%Liste%" >"%Liste%" dir /b /ad 
09.
for /f "delims=" %%i in ('dir /b /ad^|findstr /i /v /g:"%Liste%"') do for /f "tokens=1-2" %%a in ('dir /tc "%%i"^|findstr /c:"\.\."') do ( 
10.
    >>"%Neue%" echo %%a %%b %%i 
11.
    >>"%Liste%" echo %%i 
12.
13.
popd 
14.
if exist "%Neue%" echo Neue Ordner: & type "%Neue%"
Es wird jetzt beim ersten Batchlauf nur die Ordnerliste (bitte die bereits vorhandene "Ordnerliste.txt" vorweg löschen), nicht aber eine Datei "Neu.txt" erstellt. Auch bei nachfolgenden Läufen wird die Datei "Neu.txt" nur entstehen, wenn tatsächlich neue Ordner gefunden wurden - lässt sich so dann auch leichter weiterverarbeiten ...

Grüße
bastla
Bitte warten ..
Mitglied: dhdesignz
21.09.2010 um 20:16 Uhr
Super. Funktionier 1A. Mal schauen was ich nun noch alles hinzufügen kann.
Mal probieren ob ich es schaffe, dass Ergebnis per Email zu verschicken.

Ist eine super Seite hier. Kompetent und hilfreich.

Allen einen schönen Abend.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Neueste Datei mit Batch suchen
gelöst Frage von thilo-55Batch & Shell4 Kommentare

Ein herzliches Hallo an die Teilnehmer des Forums. Leider komme ich mit meinen batch/dos-Kenntnissen nicht mehr weiter. Evtl. kann ...

Batch & Shell
BATCH Datei nach Sternchen-Ordner suchen
gelöst Frage von ghoppeBatch & Shell9 Kommentare

Hallo zusammen, ich bin gerade dabei mir eine BAT-Datei zu basteln um die Profile vom Firefox per "Knopfdruck" kopieren ...

Batch & Shell
Batch nach bestimmten Ordner suchen und diese zippen
gelöst Frage von windelterroristBatch & Shell3 Kommentare

Hallo! Ich stehe mit Batch gerade etwas an Bitte um Verständnis, wenn ich das ein oder andere falsch formuliere, ...

Batch & Shell
Wie kann eine Batch einen Ordner oder exe suchen und wie kann man 2 Batch zu einer Batch zusammenfügen?
Frage von CHiLL3RBatch & Shell5 Kommentare

Hallo, ich würde gerne etwas mit 2 Batch-dateien verwirklichen, die ich im Internet gefunden habe. Diese sind dafür gedacht, ...

Neue Wissensbeiträge
Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 15 StundenApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 20 StundenWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 20 StundenWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 1 TagInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Heiß diskutierte Inhalte
Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server18 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Windows XP
Windows XP Aktivieren geht nicht
Frage von tetikmiroWindows XP13 Kommentare

Hallo Ich habe einen Windows XP mit einen vCenter Converter umgezogen auf eine ESXI. Soweit funktioniert dies auch ohne ...

Blogs
Immer wiederkehrende PHP Fehlermeldung bei Wordpress UTF-8 - ASCII
gelöst Frage von vcdweltBlogs11 Kommentare

Hi, seit einiger Zeit wird mein error_log meines Wordpress Blogs mit immer der gleichen Fehlermeldung überschwemmt. 14-Dec-2017 08:18:05 UTC ...

Switche und Hubs
Redundante L2 LWL Leitung über 2 Standorte - Spanning Tree - HP Equipment
gelöst Frage von ResolvSwitche und Hubs10 Kommentare

Hallo, ich stehe vor der Herausforderung eine Redundante L2 LWL Leitung über 2 Standorte herzustellen. Grundsätzliches Switching Know How ...