Diese Batchdatei soll seine ausgabe als txt dateischreiben

DerParte

Banned
Registriert
März 2007
Beiträge
261
Moin zusammen,

wie muss ich diese batchdatei verändern das sie das was ich sehe im cmd fenster als textdatei ausgibt? das ging doch mit >D:\daten.txt oder so?

@echo off
set Filter=*.*
set /A DateiAnzahl=0
set bytes=0

for /R %pfad% %%f in (%Filter%) do (
set /A DateiAnzahl += 1
echo %%f - %%~zfBytes
set /A bytes=bytes+%%~zf
)

echo.
echo %~dp0%Filter%
echo Es sind %DateiAnzahl% Dateien vorhanden.
echo Alle Dateien zusammen: %bytes%Bytes
set /A kbytes=bytes/1024
echo umgerechnet sind das %kbytes% KBytes
echo.
pause
 
so etwa,
Code:
@echo off
set Filter=*.*
set /A DateiAnzahl=0
set bytes=0

for /R %pfad% %%f in (%Filter%) do (
set /A DateiAnzahl += 1
echo %%f - %%~zfBytes
set /A bytes=bytes+%%~zf
)

echo.
echo %~dp0%Filter%
echo Es sind %DateiAnzahl% Dateien vorhanden. >> ausgabe.txt
echo Alle Dateien zusammen: %bytes%Bytes >> ausgabe.txt
set /A kbytes=bytes/1024 >> ausgabe.txt
echo umgerechnet sind das %kbytes% KBytes >> ausgabe.txt
echo.
exit

habe am Ende die pause durch exit ersetzt, muss aber nicht sein.
 
Nicht ganz. Ich wollte das er mir anzeigt/ausliest welche Dateien das sind. Das gesamtergebnis ist nicht so wichtig.
 
tja dafür ist in diesem Skript die %%f zuständig, dort werden ständig die neuen Dateinamen mit Pfad eingetragen, also einfach nur den echo Befehl inerhalb der FOR-Schleife in eine Datei umleiten.

z.B. so
Code:
@echo off
set Filter=*.*
set /A DateiAnzahl=0
set bytes=0

for /R %pfad% %%f in (%Filter%) do (
set /A DateiAnzahl += 1
echo %%f - %%~zfBytes >> eingelesenen_Dateien.txt
set /A bytes=bytes+%%~zf
)

echo.
echo %~dp0%Filter%
echo Es sind %DateiAnzahl% Dateien vorhanden.
echo Alle Dateien zusammen: %bytes%Bytes
set /A kbytes=bytes/1024
echo umgerechnet sind das %kbytes% KBytes
echo.
pause


falls du die am Ende der Datei angegebene Größe der Datei nicht haben möchtest dann sollte der ECHO Befehl so aussehen
Code:
echo %%f >> eingelesenen_Dateien.txt

Noch eine Anmerkung:
innerhalb deiner For-Schleife wird auf eine Variable verweist die in diesem Skript fehlt (%pfad%), entweder definiere eine Variable mit SET die dann pfad heist und trage dort dann den Pfad zum Verzeichnis ein, welches durchsucht werden soll oder lösche es einfach (wird sonst nicht benötigt).
 
Zuletzt bearbeitet:
Zurück
Oben