Forum: PC-Programmierung Frage zu Batchdatei


von Tech (Gast)


Lesenswert?

Hallo,

wie kann man in einem Batch Skript die letzte Zahl 19 herausziehen?

Ausgabe string:
12bbf38b4f4d 19

von Stefan P. (form)


Lesenswert?

1
@echo off
2
FOR /f "tokens=2" %%r in ('echo 12bbf38b4f4d 19') DO @SET ZAHL=%%r
3
echo %ZAHL%!
4
pause

von Tech (Gast)


Lesenswert?

Ok vielen Dank.

Hab leider noch ein weiteres Problem. Ich für ein Programm in der 
Konsole aus, danach soll der ausgegebene Text in eine Variable kopiert 
werden.

von Stefan P. (form)


Lesenswert?

Das macht das obige Beispiel schon.

von Tech (Gast)


Lesenswert?

Ok habs jetzt geschafft.

Folgendes ist noch komisch. Wenn ich die Batch Datei in der CMD Konsole 
ausführe dann erhalte ich auch die Zahl 19. Sobald ich die Batch Datei 
durch einen Doppelklick starte erhalte ich den Wert 19 nicht.

von long time ago (Gast)


Lesenswert?

"right string" ?

set str=%str:~-2%
echo.%str%


https://www.dostips.com/DtTipsStringOperations.php

von Tech (Gast)


Lesenswert?

Verstehe ich nicht

von Rainer V. (rudi994)


Lesenswert?

Tech schrieb:
> Sobald ich die Batch Datei
> durch einen Doppelklick starte erhalte ich den Wert 19 nicht.

Versuche mal mit Rechtsklick und dann "Als Administrator ausführen". Zur 
Kontrolle, ob Ausgaben überhaupt möglich sind, folg. Zeilen vor dem 
Pause-Befehl einfügen:
set zahl
echo HALLO WELT!

von Tech (Gast)


Lesenswert?

Der Wert wird nicht dargestellt.

von Michael U. (amiga)


Lesenswert?

Hallo,

Tech schrieb:
> Der Wert wird nicht dargestellt.

pause hast Du am Ende aber noch drin?
Sonst ist das Fenster schneller wieder zu als Du lesen kannt...

Gruß aus Berlin
Michael

von Eric B. (beric)


Angehängte Dateien:

Lesenswert?

Tech schrieb:
> Der Wert wird nicht dargestellt.

Doch!
1
@ECHO OFF
2
FOR /f "tokens=2" %%r IN ('ECHO eins zwei') DO (
3
  SET ZAHL=%%r
4
)
5
ECHO Zahl=%ZAHL%!
6
PAUSE

von long time ago (Gast)


Lesenswert?

Tech schrieb:
> Verstehe ich nicht


Mmh.

C:>\ver



> wie kann man in einem Batch Skript die letzte Zahl 19 herausziehen?

> Ausgabe string:
> 12bbf38b4f4d 19


hier staubt noch ein xp PIII-600 untersetzer vor sich hin:

jenseits MS-DOS6.x(?):

set ausgabe_string=12bbf38b4f4d 19
echo.%ausgabe_string%
12bbf38b4f4d 19

echo.%ausgabe_string:~-2%     | zwei von rechts
19
echo.%ausgabe_string:~0,11%   | elf von Links
12bbf38b4f4d


set herausgezogen=%ausgabe_string:~-2%
echo %herausgezogen%
19






vlt. willst du auch was ganz anderes ;)
Ich jetzt jdf. nen Kaffee.

von Rainer V. (rudi994)


Lesenswert?

long time ago schrieb:
> Ich jetzt jdf. nen Kaffee.

Typisch Developer! A programmer is a tool that turns coffee into code :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.