Top-Themen

Aktuelle Themen (A bis Z)

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

Batch Parameter auslesen und in bestehnder Datei einfügen (Variable)

Frage Entwicklung Batch & Shell

Mitglied: olioink

olioink (Level 1) - Jetzt verbinden

16.04.2013 um 23:24 Uhr, 1926 Aufrufe, 8 Kommentare, 1 Danke

Moin Moin,

stehe leider auf dem Schlauch. Möchte aus einer Datei eine Variable auslesen (klappt) und in einer anderen
einfügen (klappt nicht).

Zur Zeit sieht es so aus:

for /f "tokens=2" %%i in ('findstr /i "%computername%" "sn.ini"') do set SRN=%%i

Variable auslesen

Danach soll der Batch die Variable in einem Unterverzeichniss in eine Datei einfügen:

set SRN=<"\test neu\test.txt"> %SRN%

Bekomme das nicht hin...

Für hilfe dankbar..


see you

Mitglied: bastla
16.04.2013 um 23:29 Uhr
Hallo olioink und willkommen im Forum!

Was verstehst Du unter "einfügen"? Falls nur "am Ende hinzufügen" gemeint wäre, einfach
>>"\test neu\test.txt" echo %SRN%
Grüße
bastla
Bitte warten ..
Mitglied: olioink
17.04.2013 um 20:30 Uhr
Moin Moin,

na ja steht in Klammern (Variable), soll als eine Varaiable eingestezt werden. Genauer
geht es um eine Seriennummer die gesetzt wird und vom Setup verwendet werden soll.

Gruß
olioink
Bitte warten ..
Mitglied: bastla
17.04.2013 um 20:53 Uhr
Hallo olioink!

Klarer macht's diese Erklärung auch nicht ...

Magst Du nicht einfach einen Vorher-Nachher-Vergleich der zweiten Datei (als "Code" formatiert posten?

Grüße
bastla
Bitte warten ..
Mitglied: olioink
17.04.2013 um 21:33 Uhr
Moin Moin bastla,

habe also 2 Dateien, in der einen steht der Computername Nummer.

Datei 1 (sn.txt) mit Namen und Nummer
01.
 PC01 xxxx.xxxx.xxx.xxx.
Datei 2 (test.txt) mit der Variablen:
01.
 Serienenummer="%SRN%"  
Die Variable %SRN% soll durch die Nummer ersetzt werden....

Erste Zeile des Batch ist
01.
 for /f "tokens=2" %%i in ('findstr /i "%computername%" "sn.txt"') do set SRN=%%i 
02.
  
Zweite Zeile soll sein
01.
set SRN /P="\test neu\test.txt" %SRN% 
soweit kann ich die Nummer auslesen bekomme sie aber nicht in die zweite Datei.

Gruß
olioink
Bitte warten ..
Mitglied: bastla
18.04.2013, aktualisiert um 12:56 Uhr
Hallo olioink!

Und warum schreibst Du die zweite Datei nicht einfach neu, wenn dort ohnehin nur
 Serienenummer="%SRN%"
stehen soll?

Grüße
bastla
Bitte warten ..
Mitglied: olioink
22.04.2013 um 21:18 Uhr
Moin bastla,

selbstverständlich steht nur nicht das in der Datei. Vom Prinzip:

Variable über batch auslesen
Dann die zwischen gespeicherte Variable in eine weitere Datei hinein schreiben.

D.h. die Datei ersetzt den Platzhalter durch den Wert der Variable. (Speichert den Wert in der Datei ab...)

Die Datei wird dann in einem unabhängigen Schritt weiter verwendet. Diese "Ergebinss Datei"
wird umkopiert und mit einer Silent Installation verwendet.

So schwer ist das doch nicht zu verstehen.

Ich denke ehr, das das nicht so ohne weiters geht, im Batch.
Sehr viele Fragen beschäftigen sich damit... ohne ein entsprechends Ergebniss.

Und selbst wenn ich sie neu schreiben muss, soll der ganze andere Inhalt mit eingefügt werden.

Im Prinzip läuft es auf gleiche raus.

Hoffe das jetzt verständlicher wird. Und wenn das nicht geht, welche alternative hat man...?

see you (hear you, read you)
olioink
Bitte warten ..
Mitglied: bastla
22.04.2013, aktualisiert um 22:00 Uhr
Hallo olioink!
So schwer ist das doch nicht zu verstehen.
... aber offensichtlich ist es schwer zu erklären - dass es mehrere Zeilen in der Datei 2 gibt, hast Du jedenfalls noch nicht einmal in Deinem Beispiel oben gezeigt ...

... anyhow: Besser ginge Derartiges zwar per VBS, aber grundsätzlich lässt sich das auch per Batch erledigen - etwa so:
01.
@echo off & setlocal 
02.
set "Datei=D:\test.txt" 
03.
set "Platzhalter=SRN" 
04.
 
05.
set "SRN=" 
06.
for /f "tokens=2" %%i in ('findstr /i "%computername%" "sn.ini"') do set "SRN=%%i" 
07.
if not defined SRN echo SRN nicht gefunden! & goto :eof 
08.
 
09.
set "TempDat=%temp%\temp.txt" 
10.
move "%Datei%" "%TempDat%" 
11.
(for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "%TempDat%"') do ( 
12.
    set "Zeile=%%j" 
13.
    setlocal enabledelayedexpansion 
14.
    if defined Zeile ( 
15.
        echo !Zeile:%Platzhalter%=%SRN%! 
16.
    ) else ( 
17.
        echo( 
18.
19.
    endlocal 
20.
))>"%Datei%"
In der relevanten Zeile der "test.txt" sollte allerdings
Serienenummer="SRN"
(also ohne Prozentzeichen) stehen, wobei "SRN" nur einmal in der gesamten Datei vorkommen darf. Zur Sicherheit kannst Du natürlich "SRN" auch durch zB "_SRN_" ersetzen (natürlich auch in Zeile 3 des Batches).


Um Deine ursprüngliche Idee (also mit "%SRN%") umzusetzen, könntest Du übrigens noch
01.
@echo off & setlocal 
02.
set "Datei=D:\test.txt" 
03.
set "Platzhalter=SRN" 
04.
 
05.
set "SRN=" 
06.
for /f "tokens=2" %%i in ('findstr /i "%computername%" "sn.ini"') do set "SRN=%%i" 
07.
if not defined SRN echo SRN nicht gefunden! & goto :eof 
08.
 
09.
set "TempDat=%temp%\temp.txt" 
10.
move "%Datei%" "%TempDat%" 
11.
(for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "%TempDat%"') do ( 
12.
    call echo(%%j 
13.
))>"%Datei%"
versuchen.

Grüße
bastla
Bitte warten ..
Mitglied: olioink
06.05.2013 um 23:46 Uhr
Danke bastla,

hat soweit geklappt..

merci

olioink
Bitte warten ..
Ähnliche Inhalte
Microsoft
Batch Variable Erstellen mit Info aus bestehnder Variable
Frage von berlingerMicrosoft2 Kommentare

Hallo zusammen ich weiss, doofer Titel ist mir nur nichts besseres eingefallen. Also ich versuche mit SET eine neue ...

Batch & Shell
Datei als Variable auslesen und Variable ändern
gelöst Frage von chainsawBatch & Shell1 Kommentar

Hallo Profis, ich komme mit folgendem Problem nicht weiter: In dem Verzeichnis "C:\logfiles" landen bei mir Log-Dateien. Diese Log-Dateien ...

Batch & Shell
In einer Batch-Datei einen variablen Teil eines Dateinamens auslesen
gelöst Frage von dh0815Batch & Shell5 Kommentare

Hallo Leute, das ist mein erster Post hier und ich möchte mich vorab schon dafür entschuldigen, wenn ich etwas ...

Batch & Shell
BATCH Dateinamen auslesen und an variabler Stelle x Zeichen auschneiden und am Ende wieder einfügen
gelöst Frage von Marco78Batch & Shell6 Kommentare

Ich habe folgendes Problem. Ich möchte Dateinamen um einen bestimmten Teil ändern damit ich diese sortieren kann. Ist Zustand ...

Neue Wissensbeiträge
Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 38 MinutenApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 5 StundenWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 5 StundenWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 17 StundenInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Von rj11 auf rj45
Frage von jensgebkenLAN, WAN, Wireless19 Kommentare

Hallo Gemeinschaft, könnt ihr mir vielleicht bei der anfertigung eines Kabels helfen - habe ein rj 11 stecker und ...

Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...

Windows Server
Remotesteuerung der Sitzung (Kennung XX) fehlgeschlagen
gelöst Frage von Stefan91Windows Server14 Kommentare

Hallo Zusammen, seit kurzem bekomme ich oben genannte Fehlermeldung, wenn ich versuche eine Remotesitzung über den Taskmanager fernzusteuern (Rechtsklick ...