Batch Befehl aus mehreren Variablen zusammensetzen oder durch das entfernen von Zeilenumbrüche in .txt Dateien erstellen
Hallo zusammen,
ich möchte per Batch Skript den Wert mehrerer Regkeys vergleichen und ggf. korrigieren. Das klappt auch größtenteils. Bei einem Wert muss der Computernamen des PCs auf dem das Skript ausgeführt wird eingesetzt werden. Hierbei benötige ich einen Tipp.
Hier der Wert:
"ini:C:\PFAD\COMPUTERNAME.ini, Variable"
Ich habe schon verschiedenes versucht, wie z.B. den String in 3 Teile zu splitten und in eine Textdatei zu schreiben, so dass ich dort den korrekten Computernamen mit hoastname hinterlegen kann.
Leider schreibt mir das Skript die 3 Teile des Strings in 3 Zeilen, statt in eine. Ich habe lange gesucht und verschiedenes ausprobiert, aber ich habe es nicht geschafft die Zeilenumbrüche per Skript zu entfernen.
Beim anderen Versuch habe ich versucht die 3 Teile des Strings als Variablen zu definieren und anschließend wieder zusammen zu setzen. Sprich
set RegPart1 = "ini:C:\PFAD\
set RegPart2 = hostname
set RegPart3 = .ini, Variable"
Problem 1:
set RegPart2 = hostname funktioniert nicht. Da hostname nur als Text erkannt wird und als Antwort folgendes Ergebnis rauskommt:
set RegPart2
RegPart2 = hostname
auch %hostname% führt zum selbsten Ergebnis.
Ist aber im Grunde nicht so schlimm, das ich auch direkt Hostname verwenden kann um den Namen zu bekommen.
Problem 2:
ich habe zwar an verschiedenen Stellen gelesen, dass man mehrere Variablen über echo direkt hintereinander ausgeben lassen kann um in meinem Fall den String wieder zusammen zu setzen.
Ergebnis:
bzw:
Hat jemand eine Idee wie ich den String mit dem passenden Computernamen wieder zusammensetzen kann bzw. den Computernamen in den String bekomme?
Vielen Dank im Voraus.
Marcus
ich möchte per Batch Skript den Wert mehrerer Regkeys vergleichen und ggf. korrigieren. Das klappt auch größtenteils. Bei einem Wert muss der Computernamen des PCs auf dem das Skript ausgeführt wird eingesetzt werden. Hierbei benötige ich einen Tipp.
Hier der Wert:
"ini:C:\PFAD\COMPUTERNAME.ini, Variable"
Ich habe schon verschiedenes versucht, wie z.B. den String in 3 Teile zu splitten und in eine Textdatei zu schreiben, so dass ich dort den korrekten Computernamen mit hoastname hinterlegen kann.
Leider schreibt mir das Skript die 3 Teile des Strings in 3 Zeilen, statt in eine. Ich habe lange gesucht und verschiedenes ausprobiert, aber ich habe es nicht geschafft die Zeilenumbrüche per Skript zu entfernen.
Beim anderen Versuch habe ich versucht die 3 Teile des Strings als Variablen zu definieren und anschließend wieder zusammen zu setzen. Sprich
set RegPart1 = "ini:C:\PFAD\
set RegPart2 = hostname
set RegPart3 = .ini, Variable"
Problem 1:
set RegPart2 = hostname funktioniert nicht. Da hostname nur als Text erkannt wird und als Antwort folgendes Ergebnis rauskommt:
set RegPart2
RegPart2 = hostname
auch %hostname% führt zum selbsten Ergebnis.
Ist aber im Grunde nicht so schlimm, das ich auch direkt Hostname verwenden kann um den Namen zu bekommen.
Problem 2:
ich habe zwar an verschiedenen Stellen gelesen, dass man mehrere Variablen über echo direkt hintereinander ausgeben lassen kann um in meinem Fall den String wieder zusammen zu setzen.
Ergebnis:
echo RegPart1
RegPart1
RegPart1
bzw:
echo RegPart1 hostname RegPart3
RegPart1 hostname RegPart3
RegPart1 hostname RegPart3
Hat jemand eine Idee wie ich den String mit dem passenden Computernamen wieder zusammensetzen kann bzw. den Computernamen in den String bekomme?
Vielen Dank im Voraus.
Marcus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 634196
Url: https://administrator.de/forum/batch-befehl-aus-mehreren-variablen-zusammensetzen-oder-durch-das-entfernen-von-zeilenumbrueche-in-txt-634196.html
Ausgedruckt am: 04.04.2025 um 15:04 Uhr
9 Kommentare
Neuester Kommentar
Zuviele Leerzeichen.
https://de.wikibooks.org/wiki/Batch-Programmierung:_Erweiterungen_unter_ ...
@echo off
set regpart1= "ini://C:\PFAD\
set regpart2= %computername%
set regpart3= .ini, Variable"
set regpart4= %regpart1%%regpart2%%regpart3%
echo %regpart4%
ECHO 1
ECHO %regpart1%
ECHO 2
ECHO %regpart2%
ECHO 3
ECHO %regpart3%
ECHO 4
echo %regpart4%
ECHO User
echo %username%
ECHO Comp
echo %computername%
pause
https://de.wikibooks.org/wiki/Batch-Programmierung:_Erweiterungen_unter_ ...
@echo off
set regpart1= "ini://C:\PFAD\
set regpart2= %computername%
set regpart3= .ini, Variable"
set regpart4= %regpart1%%regpart2%%regpart3%
echo %regpart4%
ECHO 1
ECHO %regpart1%
ECHO 2
ECHO %regpart2%
ECHO 3
ECHO %regpart3%
ECHO 4
echo %regpart4%
ECHO User
echo %username%
ECHO Comp
echo %computername%
pause