Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Batch Aus einer .txt datei Zeilen auslesen und in die .bat einfügen

Frage Entwicklung Batch & Shell

Mitglied: Scorpion3

Scorpion3 (Level 1) - Jetzt verbinden

20.06.2012, aktualisiert 21:53 Uhr, 4150 Aufrufe, 4 Kommentare

Ich wollte eine kleine Kopier bat schreiben und das man in einer .txt datei angibt welche Datei man wohin kopiern möchte. z.b. "I:\Test\Neu.txt" (neue Zeile)nach "I:\Test2\" im textdokument soll es so aussehen:
I:\Test\Neu.txt
I:\Test2\

bisher sieht mein Geschriebenes so aus:

@echo off
title Backup
echo.
echo.
echo Backup wird gestartet
pause

if exist "I:\Test\Neu.txt\" goto a
goto b

:a
echo Datei vorhanden!
pause
goto c

:c
xcopy "I:\Test\Neu.txt" "I:\Test2\"

if exist "I:\Test\" goto g
goto f

:b
color 0c
echo Datei nicht vorhanden!
goto f

:f
echo Backup fehlgeschlagen!
color 0c
pause
exit

:g
echo Backup erfolgreich!
color 0a
pause
exit

ich muss die angaben aus der .txt Datei an die richtige stelle bekommen...

.txt 1 Zeile: Muss in die 1. if und in den xcopy eingefügt werden.
.txt 2 Zeile: Muss in das 2. if und in das zweite von xcopy rein.

Kann mir einer sagen wie das geht?
Danke schonmal!
Scorpion3
Mitglied: bastla
20.06.2012, aktualisiert um 22:14 Uhr
Hallo Scorpion3 und willkommen im Forum!

Ich halte zwar die Aufteilung der beiden Pfade in der Textdatei (in meinem Beispiel: "I:\Test\Config.txt") auf 2 Zeilen nicht für sinnvoll, aber umsetzen ließe sich das unter Verwendung von Variablen etwa so:
01.
setlocal 
02.
set "Quelle=" 
03.
set "Ziel=" 
04.
for /f "usebackq delims=" %%i in ("I:\Test\Config.txt") do ( 
05.
    if not defined Quelle ( 
06.
        set "Quelle=%%i" 
07.
    ) else ( 
08.
        if not defined Ziel set  "Ziel=%%i" 
09.
10.
11.
if not defined Ziel echo Keine Zielangabe gefunden! & pause & goto :eof 
12.
 
13.
if exist "%Quelle%" ...
Durch die "defined"-Abfragen wird sichergestellt, dass nur die ersten beiden Zeilen der Datei verwendet werden und dass auch tatsächlich ein Ziel gelesen werden konnte ...

Grüße
bastla
Bitte warten ..
Mitglied: Scorpion3
21.06.2012 um 15:19 Uhr
Danke für deine Antwort,

ich muss die angaben aus der .txt Datei an die richtige stelle bekommen...

.txt 1 Zeile: Muss in die 1. if und in den xcopy eingefügt werden.
.txt 2 Zeile: Muss in das 2. if und in das zweite von xcopy rein.

so wie ich das unten Geschriebene verstehe sind die zwei Pfade unten nicht getrennt...
also was kopiert werden soll und wo hin.

ich bin nicht so erfahren mit batch Dateien alo wo genau müsste ich das dann einfügen damit es auch klappt?
Bitte warten ..
Mitglied: bastla
21.06.2012 um 16:13 Uhr
Hallo Scorpion3!

Du hast ja nach dem oben skizzierten Schnipsel Quelle und Ziel jeweils in der gleichnamigen Variablen - daher überall, wo bisher in Deinem Batch "I:\Test\Neu.txt\" steht, einfach "%Quelle%" einsetzen und analog dazu auch beim Ziel vorgehen ...

Grüße
bastla
Bitte warten ..
Mitglied: Scorpion3
21.06.2012 um 18:26 Uhr
Hallo bastla,
danke es klappt

Grüße
Scorpion3
Bitte warten ..
Ähnliche Inhalte
PHP
gelöst TXT Datei auslesen und bestimmte Zeilen in Variable setzen (11)

Frage von 126594 zum Thema PHP ...

Batch & Shell
Per Batch eine XLS-Datei in eine TXT-Datei umwandeln (5)

Frage von skiing69 zum Thema Batch & Shell ...

Batch & Shell
gelöst Zeiten in .txt datei auslesen und Differenz berechnen (14)

Frage von meex87 zum Thema Batch & Shell ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
CMS
Lokales Wordpress im LAN - wie aufsetzen? (16)

Frage von Static zum Thema CMS ...

Java
gelöst Net user per script aus txt oder csv für FTP (15)

Frage von OlliPWS zum Thema Java ...

Exchange Server
Microsoft Exchange Weiterleitung mit anderer primären E-Mail Adresse (14)

Frage von Rene12345 zum Thema Exchange Server ...

LAN, WAN, Wireless
IP im privaten Netz nicht erreichbar (14)

Frage von guntis zum Thema LAN, WAN, Wireless ...