web-dev-qa-db-ja.com

ユーザーからの文字列をバッチファイルから環境変数に入力する方法

ユーザーに入力の詳細を要求し、後でコマンドライン引数として使用します。

31
EFraim

set/p引数と共に使用できます。

SET /P variable=[promptString]

/ Pスイッチを使用すると、変数の値をユーザーが入力した入力行に設定できます。入力行を読み取る前に、指定されたpromptStringを表示します。 promptStringは空にすることができます。

そのため、次のようなものを使用するだけです

set /p Input=Enter some text: 

後で、その変数をコマンドの引数として使用できます。

myCommand %Input%

ただし、入力にスペースが含まれる場合は、引用することをお勧めします。

myCommand "%Input%"
52
Joey

完全性のためだけに、むしろ迂遠な方法:

 for /f "delims=" %i in ('type CON') do set inp=%i

もちろん、これにはターミネータとして^ Zが必要です。したがって、ヨハネスの答えはあらゆる実用的な面で優れています。

2
EFraim