0

毎回設定した同じエコーを言う代わりに、エコーのリストを与えることができ、そのエコーコマンドに到達するたびに言うランダムなものを選択する方法はありますか?

4

2 に答える 2

1

うん。これが概念実証です。

@echo off
setlocal enabledelayedexpansion

set string[0]=This is the first random line.
set string[1]=This is the second random line.
set string[2]=This is the third random line.

set /a idx=%random% * 3 / 32768

echo !string[%idx%]!

Windows バッチ スクリプトで乱数を生成する方法について詳しくは、こちらをご覧ください。

于 2013-03-20T18:31:31.623 に答える
0
@echo OFF
SETLOCAL
SET message0=message zero
SET message1=message one
SET message2=message two
SET message3=message three
SET message4=message four

:: running 10 times

FOR /l %%i IN (1,1,10) DO CALL :showme
GOTO :eof

:showme
SET /a select=%RANDOM% %% 5
CALL SET message=%%message%select%%%
ECHO %message%
GOTO :eof
于 2013-03-20T18:32:42.527 に答える