derwowusste
Goto Top

In Batch random-Zahlen erzeugen mit führenden Nullen

Moin Kollegen.

Ich kann per Variable %random% zwar Zufallszahlen erzeugen, weiß jedoch nicht, wie ich führende Nullen einbauen kann. Es sollen zweistellige Zahlen erzeugt werden, jedoch fehlt mir ein Kunstgriff, wie ich auch 01, 02, 03... und möglichst auch 00 erzeugen kann - habt Ihr sowas auf Lager?

Genauer: es soll für eine Minuten-Uhrzeit genutzt werden. 00 bis 59 soll also ausgegeben werden.

Content-ID: 250440

Url: https://administrator.de/contentid/250440

Ausgedruckt am: 22.11.2024 um 12:11 Uhr

laster
Lösung laster 29.09.2014 aktualisiert um 18:29:54 Uhr
Goto Top
Hallo,

@echo off
for /F %%i in ('echo %random%') do @set RND=%%i  
set RND=0000000000%RND%
echo %RND:~-10%
damit bekommst Du schon mal die letzten x Stellen

Gruß
LS
drobskind
Lösung drobskind 29.09.2014 aktualisiert um 18:29:49 Uhr
Goto Top
set /a ran=%random% %%59
set number=00%ran%

set number=%number:~-2%
echo %number%

Pause 
colinardo
Lösung colinardo 29.09.2014 aktualisiert um 18:29:45 Uhr
Goto Top
Moin DWW,
@echo off
set /a rnd=%random% %%60
set rnd=0%rnd%
echo %rnd:~-2%
Erzeugt Zahlen von 00 - 59

wenn's gleich mehere sein sollen mit for-Schleife:
@echo off & setlocal enabledelayedexpansion
for /L %%a in (1 1 10) DO @(
  set /a rnd=!random! %%60
  set rnd=0!rnd!
  echo !rnd:~-2!
)
Grüße Uwe
colinardo
colinardo 29.09.2014 aktualisiert um 13:34:28 Uhr
Goto Top
Zitat von @drobskind:
set /a ran=%random% %%59
hinten müsste 60 stehen face-wink ansonsten gibts nur Zahlen bis 58. Die 00 zählt mit.

Grüße Uwe
drobskind
drobskind 29.09.2014 um 13:37:35 Uhr
Goto Top
Danke Uwe,

du hast natürlich recht.

Nun hat DerWoWusste aber genug auswahl, auch wenn im Prinzip alle identisch funktionieren.
Uwe seine ist halt am kompaktesten. face-wink
DerWoWusste
DerWoWusste 29.09.2014 aktualisiert um 22:45:45 Uhr
Goto Top
Sehr schön, ich danke Euch.
Brauchte ich übrigens, um einen Task per schtasks /Change nachträglich mit randomize auszustatten.
(das geht, ob man's glaubt oder nicht, sonst nur über die GUI oder über xml-Import).
schtasks /change /tn Taskname /st 14:09
(14:09 als Beispiel).