|
|
いつもバッチを作成する際には重宝させていただいております。 初心者の質問で申し訳ないのですが、条件分岐の処理でお聞きしたく、書き込ませていただきました OSはWindowsXPになります。 質問は下記バッチの動作についてです。 ---------- set /P VAR3= for %%H in (*|*) do if %%H=="%VAR3%" GOTO FUKUMU for %%H in (*<*) do if %%H=="%VAR3%" GOTO FUKUMU for %%H in (*>*) do if %%H=="%VAR3%" GOTO FUKUMU echo 「|」「<」「>」のいずれも文字列には含まれていません。 GOTO QUIT :FUKUMU echo 「|」「<」「>」のいずれかが文字列に含まれています。 :QUIT echo end ---------- 期待したい動作は下記になります。 「set /P」にて入力した値の中に「|」「<」「>」が一文字でも含まれる場合(たとえば「a|a|a」や「<ab>」など)には「FUKUMU」にジャンプさせる。 という動作です。 ただ「for」の部分で「*」を使用するとbatファイルのあるカレントディレクトリのファイル名を走査してしまうようでうまくいかない状態です。 なんとか期待した動作は出来ないものでしょうか。 標準コマンドでこのような条件分岐を行うことが難しいのであれば言っていただければと思います。 何かちょっとしたヒントでもいいですのでいただけると幸いであります。 以上、宜しくお願いいたします。 |
|
|
|
|