Per Batch nach neuen Ordnern suchen
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
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
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 151478
Url: https://administrator.de/forum/per-batch-nach-neuen-ordnern-suchen-151478.html
Ausgedruckt am: 17.05.2025 um 05:05 Uhr
9 Kommentare
Neuester Kommentar
Hallo dhdesignz und willkommen im Forum!
Du könntest es so versuchen:
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 "
eingefügt werden.
Grüße
bastla
Du könntest es so versuchen:
@echo off & setlocal
set "Ordner=D:\A"
set "Liste=%Ordner%\Ordnerliste.txt"
set "Neue=%Ordner%\Neu.txt"
pushd "%Ordner%"
del "%Neue%" 2>nul
if not exist "%Liste%" type nul>"%Liste%"
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 (
>>"%Neue%" echo %%a %%b %%i
>>"%Liste%" echo %%i
)
popd
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
Grüße
bastla
[OT]
Moin dhdesignz,
willkommen im Forum.
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]
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......
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?
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]
Hallo dhdesignz!
; so sollte es besser gehen:
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
Könnte es an meinem 64Bit Windows 7 liegen?
Leider nicht daran, sondern am Batch @echo off & setlocal
set "Ordner=C:\A"
set "Liste=%Ordner%\Ordnerliste.txt"
set "Neue=%Ordner%\Neu.txt"
pushd "%Ordner%"
del "%Neue%" 2>nul
if not exist "%Liste%" >"%Liste%" dir /b /ad
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 (
>>"%Neue%" echo %%a %%b %%i
>>"%Liste%" echo %%i
)
popd
if exist "%Neue%" echo Neue Ordner: & type "%Neue%"
Grüße
bastla