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, 9012 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 ..
Ähnliche Inhalte
Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von 126594 zum Thema Batch & Shell ...

Windows Server
gelöst Terminalserver .ini Datei unter C:Windows (8)

Frage von geocast zum Thema Windows Server ...

Batch & Shell
gelöst Variable per Batch auslesen und in Registry schreiben (3)

Frage von Zendara zum Thema Batch & Shell ...

Neue Wissensbeiträge
Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(3)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Microsoft Office
Office Druck fehler (18)

Frage von DaistwasimBusch zum Thema Microsoft Office ...

Netzwerkmanagement
Windows Server 2008 R2: "netsh reset" nicht verfügbar? (11)

Frage von RickTucker zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
Uninitialisierte Festplatte - Daten retten (11)

Frage von peterla zum Thema Festplatten, SSD, Raid ...

Microsoft Office
Outlook 2016 in Ordneransicht starten - GPO (9)

Frage von D-Line zum Thema Microsoft Office ...