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

Schreiben und lesen von Batch Variablen in eine ini Datei

Frage Entwicklung Batch & Shell

Mitglied: pit0711

pit0711 (Level 1) - Jetzt verbinden

20.02.2009, aktualisiert 13:53 Uhr, 8779 Aufrufe, 3 Kommentare

Hallo,

ich sitze gerade an einer Batchdatei die automatisiert immer nur die neuesten Dateien auf ein Netzlaufwerk kopieren soll.
Bei jedem Ausführen der Datei wird ein neuer Ordner erstellt mit der aktuellen Uhrzeit. Projektname und Pfad sollen beim frischen installieren Batch aubgefragt werden.


Jetzt habe ich das Problem das ich einfach nicht durchblicke wie man mit dem for Befehl Variablen in eine Datei schreiben/lesen kann.

Hier das Batch file:

@echo off
title Datensicherung
color 2
cls
type logo

@rem Variablen festlegen
@rem Doppelpunkte aus Zeitangabe entfernen
set h=%time:~0,2%
set m=%time:~3,2%
set s=%time:~6,2%
set zeit3=%h%%m%%s%



@rem Doppelpunkte aus Datum entfernen
@rem noch nicht implementiert



@rem Prüfen ob Konfiguration schon vorhanden
if exist dasi.ini goto ablauf
set /p name=Projektname eingeben (ohne Leerzeichen)

@rem Prüfen ob Konfiguration schon vorhanden
if exist dasi.ini goto ablauf
set /p pfad=Exe Pfad eingeben: (Bsp: D:\Daten\)

@rem Projektname und Projektpfad in Datei schreiben
@rem Wie geht das?



:ablauf

@rem Pfad und Projektname aus dasi.ini auslesen und in Variable schreiben
@rem Wie geht das???



@rem Pfad und Name auf Bildschirm anzeigen
echo Projektname: %name%
echo EXE Pfad: %pfad%

@rem Netzlaufwerk verbinden
net use Y: \\xxx.79.225.xxx /user:xxx xxx
y:
cd \

@rem Prüfen ob Ordner vorhanden, wenn nicht dann wird er erstellt
if exist Datensicherung goto x
mkdir Datensicherung
cd Datensicherung

:x
cd Datensicherung
if exist %name% goto x1
mkdir %name%
cd %name%

:x1
cd %name%
if exist %date% goto x2
mkdir %date%

:x2
cd %date%
@rem Zeit Ordner erstellen
mkdir %zeit3%
cd %zeit3%

@rem Kopieren der Dateien
:copy
xcopy %pfad%\*.jpg Y:\Datensicherung\%name%\%date%\%zeit3%
xcopy %pfad%\*.exe Y:\Datensicherung\%name%\%date%\%zeit3%
xcopy %pfad%\*.dat Y:\Datensicherung\%name%\%date%\%zeit3%


@rem netzlaufwerk trennen
net use Y: /d

@rem Variablen killen

set name=
set pfad=
set zeit3=
set time=

echo Datensicherung erfolgreich ausgeführt
break 2
pause
exit
Mitglied: lowbyte1
20.02.2009 um 14:40 Uhr
hi pit0711

Ich finde so etwas für Batch viel zu gewagt ,da Du Dich um Sachen kümmern musst die Du in einer Programmiersprache wie zbsp. c oder c++ oder auch visual basic einfach nicht hast.
Weil Batch einfach nicht für sowas ausgelegt ist.
Ansonnsten wird dir sicher ein Batch spezialist wie biber oder bastla weiterhelfen.



lowbyte
Bitte warten ..
Mitglied: bastla
20.02.2009 um 14:49 Uhr
Hallo pit0711 und willkommen im Forum!
Variablen in eine Datei schreiben/lesen
Die einfachste Variante sähe etwa so aus:
Wähle ein einheitliches Präfix für Deine Variablen, etwa "_DaSi_" (die Variablen hießen dann zB %_DaSi_Pfad%, %_DaSi_Name%, etc) - damit würde für das Schreiben genügen:
set _DaSi_>dasi.ini
Wieder einlesen könntest Du die Variablen mit
for /f "delims=" %%i in (dasi.ini) do set "%%i"
Das "Killen" der Variablen ist übrigens unnötig, wenn Du an den Anfang des Batches ein "setlocal" setzt - damit werden alle an Variablen vorgenommenen Änderungen (inkl Erstellen) durch ein "endlocal" (und das wird beim Beenden des Batches automatisch ausgeführt) verworfen.
@lowbyte1
Wo siehst Du Probleme?

Grüße
bastla
Bitte warten ..
Mitglied: lowbyte1
20.02.2009 um 15:11 Uhr
helo

Einfach umständlich das ganze, aber das ist wohl ansichtssache.
Aber im nachhinein muss ich dir recht geben ,so complex wird diese Lösung in batch auch nicht.

lowbyte
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst BATCH ini Datei Datei auslesen (2)

Frage von Juergen42 zum Thema Batch & Shell ...

Batch & Shell
gelöst Kl. Frage: Log-File schreiben per Batch (3)

Frage von Yauhun zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell oder Batch-Task: Kopiere Datei x mal und benenne diese um (2)

Frage von Lorderich zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...