Datei einlesen und verarbeiten
Hallo Leute,
hab mir einen Batch gezimmert, der auch funktioniert, aber ich denke man könnte es eleganter lösen ohne den Umweg über die zwei zusätzlichen Dateien So in einem Rutsch in einer Schleife? Hier der Code..:
set nach=I:\TFS\jkm\backup
echo Ziel/Quelle = %nach%
echo Sollen die Netzlaufwerke gesichert oder rueckgesichert werden? (S)ichern (R)uecksichern
set /P auswahl=
if "%auswahl%"=="s" goto sichern
if "%auswahl%"=="r" goto rueck
if "%auswahl%"=="S" goto sichern
if "%auswahl%"=="R" goto rueck
echo Auswahl ungueltig
goto ende
:sichern
net use > %nach%\net.txt
echo Datei wurde kopiert..
pause
goto ende
:rueck
if exist net2.txt del net2.txt
if exist net3.txt del net3.txt
more %nach%\net.txt | SORT /r | FIND "OK" >> net2.txt
more %nach%\net.txt | SORT /r | FIND "Getrennt" >> net2.txt
for /f "eol= tokens=2,3*" %%i in (net2.txt) do echo net use %%i %%j >> net3.txt
for /f "eol= delims=xxx," %%i in (net3.txt) do %%i
if exist net2.txt del net2.txt
if exist net3.txt del net3.txt
echo Netzlaufwerke wurden zurueckgesichert..
pause
goto ende
:ende
hab mir einen Batch gezimmert, der auch funktioniert, aber ich denke man könnte es eleganter lösen ohne den Umweg über die zwei zusätzlichen Dateien So in einem Rutsch in einer Schleife? Hier der Code..:
set nach=I:\TFS\jkm\backup
echo Ziel/Quelle = %nach%
echo Sollen die Netzlaufwerke gesichert oder rueckgesichert werden? (S)ichern (R)uecksichern
set /P auswahl=
if "%auswahl%"=="s" goto sichern
if "%auswahl%"=="r" goto rueck
if "%auswahl%"=="S" goto sichern
if "%auswahl%"=="R" goto rueck
echo Auswahl ungueltig
goto ende
:sichern
net use > %nach%\net.txt
echo Datei wurde kopiert..
pause
goto ende
:rueck
if exist net2.txt del net2.txt
if exist net3.txt del net3.txt
more %nach%\net.txt | SORT /r | FIND "OK" >> net2.txt
more %nach%\net.txt | SORT /r | FIND "Getrennt" >> net2.txt
for /f "eol= tokens=2,3*" %%i in (net2.txt) do echo net use %%i %%j >> net3.txt
for /f "eol= delims=xxx," %%i in (net3.txt) do %%i
if exist net2.txt del net2.txt
if exist net3.txt del net3.txt
echo Netzlaufwerke wurden zurueckgesichert..
pause
goto ende
:ende
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 111683
Url: https://administrator.de/contentid/111683
Ausgedruckt am: 25.11.2024 um 00:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo Haegar75!
Etwa so:
Das "echo" in Zeile 21 dient nur dem Testen (damit werden die "net use"-Befehle nur angezeigt) und muss im "Ernstfall" natürlich entfernt werden.
Grüße
bastla
Etwa so:
@echo off & setlocal
set "nach=I:\TFS\jkm\backup"
echo Ziel/Quelle = %nach%
echo\
echo Sollen die Netzlaufwerke gesichert oder rueckgesichert werden? (S)ichern (R)uecksichern
echo\
set /P auswahl=
if /i "%auswahl%"=="s" goto sichern
if /i "%auswahl%"=="r" goto rueck
echo\
echo Auswahl ungueltig
goto ende
:sichern
net use|findstr /b "OK Getrennt">"%nach%\net.txt"
echo Datei wurde kopiert..
pause
goto ende
:rueck
for /f "usebackq tokens=2,3*" %%i in ("%nach%\net.txt") do echo net use %%i %%j
echo Netzlaufwerke wurden zurueckgesichert..
pause
:ende
Grüße
bastla