ignos83

Zahlenpaare in txt file umdrehen mit Hilfe von Batch

Hallo zusammen, ich hoffe auf eure Unterstützung. Ich lese mit hilfe einer Batch einen bestimmten Wert aus der Registry aus. Dieser wird in ein txt File gespeichert. Mein Problem ist, die Reihenfolge des Wertes muss noch verändert werden. Der gespeicherte Wert sieht folgender Weise aus.

12345678

Jetzt bräuchte ich eine Batch kommando was daraus folgendes macht:

21 43 65 87

d.h. nur die zahlenpaare drehen (ohne leerzeichen, dient nur der veranschaulichung). Hat da jemand vielleicht eine Idee wie man sowas mit Batch kurz und schmerzhaft realisieren kann?
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 262847

Url: https://administrator.de/forum/zahlenpaare-in-txt-file-umdrehen-mit-hilfe-von-batch-262847.html

Ausgedruckt am: 27.04.2025 um 01:04 Uhr

114757
Lösung 114757 09.02.2015 aktualisiert um 13:28:16 Uhr
Goto Top
@echo off & setlocal ENABLEDELAYEDEXPANSION
set zahl=12345678
call :switch zahl_neu %zahl%
echo %zahl_neu%
goto :eof


REM ------- FUNKTIONEN --------
:switch
call :strLength strLen "%~1"  
set /a strLen=%strLen%-2
for /L %%a in (0 2 %strLen%) DO @(
	set /a pos=%%a
	set /a cnt=!pos!+1
	call set new=!new!%%zahl:~!cnt!,1%%%%zahl:~!pos!,1%%
)
set "%~1=!new!"  
goto :eof


:strLength
set "#=%~2"  
set length=0
:stringLengthLoop
if defined # (set #=%#:~1%&set /A length += 1&goto stringLengthLoop)
set "%~1=%length%"  
goto :eof
Gruß jodel32
ignos83
ignos83 09.02.2015 um 13:31:26 Uhr
Goto Top
Cool Danke. Habe es jetzt so für mich gelöst. Deine Antwort brauche ich aber bei einem anderm Problem.
for /f "tokens=2*" %%a in ('REG QUERY "%var2%\Device Parameters" /v EDID') do set "ID=%%~b"  

Set ID1=%ID:~30,2%
Set ID2=%ID:~28,2%
Set ID3=%ID:~26,2%
Set ID4=%ID:~24,2%

echo =%ID1%%ID2%%ID3%%ID4%>>%tmpini%
Ich greife die Zahl schon beim speichern in die txt in der richtigen Reihenfolge ab. Ist zwar nicht ganz elegant. Aber bei 8 Ziffern verschmerzbar.