
43547
12.04.2007, aktualisiert um 16:24:57 Uhr
Gefundene Dateien suchen und aktuellste Kopieren
Gefundene Dateien suchen und aktuellste Kopieren
Einen wunderschönen guten Tag,
ich habe mir oft helfen lassen und Ihr habt mir geholfen das Script fast perfekt zu machen.
Jetzt kommt der letzte schritt...
Ich suche also an einem PC nach *.CON Dateien und finde mehrere die dann im "C:TEMP" Ordner liegen. So nun habe ich es dank euch auch geschaft das die Aktuellste in den "C:Temp2" Ordner kopiert werden. Mein Problem ist nu das diese Datei von heute sein muss... Es soll aber die Aktuellste Datei vom "C:TEMP" Ordner kopiert werden. (Also auch die von gestern wenn es keine von heute gibt). Hier der teil zu diesem Script:
@echo OFF
CLS
COLOR 9F
TITLE Arzt Abrechnungssoftware Version 2.0
SetLocal EnableDelayedExpansion
MD %LW_WINDIR%AACABR >NUL
MD C:TEMP
MD C:TEMP2
SET LW_WINDIR=A:
SET LW_AAC_SYS=AACABR
SET LOKLW=C:TEMP
SET LOKCON=C:TEMP2
:SEARCH_C
IF NOT EXIST C:*.* GOTO SEARCH_D
C:
CD
ECHO Suchen und Einlesen der vorhandenen CON-Abrechnungsdateien auf Laufwerk C:
ECHO Bitte haben Sie etwas Geduld...
FOR /f "delims=" %%i in ('DIR *.CON /B /S') do if /i [%%~xi]==[.con] @set /A j+=1 & @echo LW!j!=%%i>>%LW_WINDIR%%LW_AAC_SYS%LW_C.drv
ECHO Auslesen der CON Dateien und vorbereiten der Aktuellen Abrechnungsdatei
ECHO auf Laufwerk C:
IF EXIST "%LW_WINDIR%%LW_AAC_SYS%LW_C.drv" (
FOR /f "delims== tokens=2" %%i in (%LW_WINDIR%%LW_AAC_SYS%LW_C.drv) do (
XCOPY %%i %LOKLW% /D/Y >NUL
)
) else (
GOTO EXIT
)
for /f %%i in ('dir %LOKLW%*.CON /b/s /a:-d') do (echo %%~ti |find "%date%") && copy "%%~dpnxi" %LOKCON% >NUL
IF EXIST %LOKCON%*.CON XCOPY %LOKCON%*.CON %LW_WINDIR%%LW_AAC_SYS%
:EXIT
exit
Vielen lieben dank im Vorraus... man ist das ein schööönes wetter...
Einen wunderschönen guten Tag,
ich habe mir oft helfen lassen und Ihr habt mir geholfen das Script fast perfekt zu machen.
Jetzt kommt der letzte schritt...
Ich suche also an einem PC nach *.CON Dateien und finde mehrere die dann im "C:TEMP" Ordner liegen. So nun habe ich es dank euch auch geschaft das die Aktuellste in den "C:Temp2" Ordner kopiert werden. Mein Problem ist nu das diese Datei von heute sein muss... Es soll aber die Aktuellste Datei vom "C:TEMP" Ordner kopiert werden. (Also auch die von gestern wenn es keine von heute gibt). Hier der teil zu diesem Script:
@echo OFF
CLS
COLOR 9F
TITLE Arzt Abrechnungssoftware Version 2.0
SetLocal EnableDelayedExpansion
MD %LW_WINDIR%AACABR >NUL
MD C:TEMP
MD C:TEMP2
SET LW_WINDIR=A:
SET LW_AAC_SYS=AACABR
SET LOKLW=C:TEMP
SET LOKCON=C:TEMP2
:SEARCH_C
IF NOT EXIST C:*.* GOTO SEARCH_D
C:
CD
ECHO Suchen und Einlesen der vorhandenen CON-Abrechnungsdateien auf Laufwerk C:
ECHO Bitte haben Sie etwas Geduld...
FOR /f "delims=" %%i in ('DIR *.CON /B /S') do if /i [%%~xi]==[.con] @set /A j+=1 & @echo LW!j!=%%i>>%LW_WINDIR%%LW_AAC_SYS%LW_C.drv
ECHO Auslesen der CON Dateien und vorbereiten der Aktuellen Abrechnungsdatei
ECHO auf Laufwerk C:
IF EXIST "%LW_WINDIR%%LW_AAC_SYS%LW_C.drv" (
FOR /f "delims== tokens=2" %%i in (%LW_WINDIR%%LW_AAC_SYS%LW_C.drv) do (
XCOPY %%i %LOKLW% /D/Y >NUL
)
) else (
GOTO EXIT
)
for /f %%i in ('dir %LOKLW%*.CON /b/s /a:-d') do (echo %%~ti |find "%date%") && copy "%%~dpnxi" %LOKCON% >NUL
IF EXIST %LOKCON%*.CON XCOPY %LOKCON%*.CON %LW_WINDIR%%LW_AAC_SYS%
:EXIT
exit
Vielen lieben dank im Vorraus... man ist das ein schööönes wetter...
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 56456
Url: https://administrator.de/forum/gefundene-dateien-suchen-und-aktuellste-kopieren-56456.html
Ausgedruckt am: 22.04.2025 um 01:04 Uhr
6 Kommentare
Neuester Kommentar

Hi
gretz drop
Gefundene Dateien suchen
Bitte nochmals zum Mitschreiben: Welche der gefundenen Dateien willst du suchen?gretz drop
da ich jetzt so nicht wirklich nachvollziehen kann wie bzw. ob diese Batch so funktioniert geb ich nur mal ne Anleitung soweit ich dneke es verstanden zu haben was du vorhast.
Wenn ichs richtig verstehe befinden sich die .con Dateien alle im Verzeichnis C:\temp. Wenn du sicherstellen kannst das in diesem Verzischniss sonst keine anderen dateien der Endung .con sind (kannst diese ja vorher rauslöschen wenn möglich) ist es recht einfach erledigt.
Mit
Von dieser Liste nimmst du einfach die letzte dann, also so:
miniversum
Wenn ichs richtig verstehe befinden sich die .con Dateien alle im Verzeichnis C:\temp. Wenn du sicherstellen kannst das in diesem Verzischniss sonst keine anderen dateien der Endung .con sind (kannst diese ja vorher rauslöschen wenn möglich) ist es recht einfach erledigt.
Mit
dir /B /A-D /OD C:\temp\*.con
kannst du dir ja alle .con Dateien sortiert nach dem Datum ausgeben lassen.Von dieser Liste nimmst du einfach die letzte dann, also so:
for /F "delims=" %%a in ('dir /B /A-D /OD C:\temp\*.con') do set neustecon="%%a"
So steht dan in der Variabeln %neustecon% die aktuellste .con Dateiminiversum