2016-07-11 5 views
1

私はバッチファイルを持っているので、ユーザーが入力したものを入力して値を入力します。値は%input%としましょう。バッチファイルで特定のテキスト入力を確認するにはどうすればよいですか?

私は、バッチファイルが%input%値に特定の単語をチェックして、gotoコマンドを使用します。

誰でも解決できますか?

ありがとうございました。ここで

EDIT

は、私が使用していますいくつかのコードです:

@echo off 
title Test 
:Loop 
Set /p Input="" 
if "%input%"=="word *" goto function 

私はちょうど%input%値に"word"をチェックする方法を考え出す助けが必要です。

これによっていくつかの問題が解決されることを願っています。

+0

[これは](http://stackoverflow.com/a/36236765/2152082)あなたのニーズに適応するのは簡単でなければなりません(単に変数を処理する代わりに、別の関数のelseと後藤意味しますファイルの最後の行を読む) – Stephan

+0

質問を編集してコードを投稿してください! – Hackoo

答えて

1

は、このコードを試してみて:

@echo off 
:MainLoop 
Color 0B 
Cls 
set /p "Input=Type something here " 
echo %Input%|findstr /i "\<hello\>">nul && goto HelloFunction || goto NoHelloFunction 

:HelloFunction 
cls 
Color 0A 
echo I am into The Hello Function 
pause 
Goto MainLoop 

:NoHelloFunction 
cls 
Color 0C 
echo I am not into the Hello Function 
pause 
Goto MainLoop 

説明

\<\>"単語の境界"を意味し、これは偽陽性(こんにちは Oを回避し、 C hello、...)

>nulは、見つかった文字列をnulにリダイレクトして画面をクリアに保ちます。

&&前のコマンド(findstr)が成功した場合のみ、setコマンドを実行します。

||

+0

ありがとうHackoo、コードは素晴らしい作品です。 –

+0

@HerinAlentaあなたは大歓迎です:) – Hackoo

関連する問題