2017-09-13 3 views
1
@echo off 
:start 
SET /A number=%RANDOM% * 3/32768 + 1 
echo %number%>number.txt 
PING localhost -n 2 >NUL 
goto start 

1-3から乱数を生成する必要があります。それはそうです。しかし、.txtファイルは空であり、コンソールには「Echo is off」というメッセージが表示されます。誰かがこのバッチスクリプトがうまくいかない理由を教えてもらえますか?

誰かが私を助けることができますか?

+0

私のPCで動作するようです。そして、無関係だが['timeout'](https://stackoverflow.com/q/1672338/995714)はpingよりも良いかもしれない –

答えて

2
>number.txt echo %number% 

リダイレクタは、論理デバイス(割り当てられていない0 = STDIN、1 = STDOUT、2 =標準エラー、その他)リダイレクト直接前桁。リダイレクション命令の位置は一般に無関係です。慣例と歴史的な使い方によって、コマンドの最後にのみ。

+0

ありがとう。それは今働きます! :) – Lucky

+0

'>'の前の空白は、 'echo%number%> number.txt'に役立ちます。 –

+0

@LưuVĩnhPhúc:そうではありません。スペースはファイルに出力されますが、順序を逆にすると、行に端末スペースを持つファイルができなくなります。 – Magoo

関連する問題