[前の記事]« SETコマンドの変数内容に"="を含める方法
[次の記事]「×日前の日付」を計算で算出・取得したい »

関連オンラインソフト配布サイト:
Vector>ダウンロード(top) |>MS-DOSまたは汎用 | >WindowsVista/XP/2000/NT

▲カテゴリー「IF(結果の検査、条件分岐)」索引へ

引数が大文字でも小文字でも同じ処理に飛ばす方法は?


630) バッチ処理で悩んでます お願いします 2002/09/11(水) 10:48


はじめまして、バッチ処理で悩んでいます。
windows2000で動かすバッチファイルをDOSコマンドで書いていますが、IF文のところで、次のようなことは可能なのでしょうか?

IF NOT "%1"=="W" goto NEXTA
:NEXTA
次の処理

というところで、一番目の引数と"W"を比較しています。
もし引数が小文字の"w"だったときも、NEXTAへ処理を飛ばしたいのです。つまり、一番目の引数が大文字のWもしくは小文字のwかどうかを判別したい のです。条件文でよくあるようなORのようなものってないのでしょうか?不勉強で申し訳ありませんが、どなたかアドバイス、よろしくお願いいたします。

633) Re:バッチ処理で悩んでます じゃく 2002/09/11(水) 12:54


こんにちは。

>windows2000で動かすバッチファイルをDOSコマンドで書いていますが、IF文のところで、次のようなことは可能なのでしょうか?

>IF NOT "%1"=="W" goto NEXTA
>:NEXTA
>次の処理

>というところで、一番目の引数と"W"を比較しています。
>もし引数が小文字の"w"だったときも、NEXTAへ処理を飛ばしたい
>のです。
このバッチだと、大文字のWだったときは、NEXTAへ処理が飛んでいません。NOTがついていますので、W以外の時NEXTAに飛びます。
ただ、if文の次に何の記述もないのでNEXTAへ処理が進みます。


>つまり、一番目の引数が大文字のWもしくは小文字のwかどうかを
>判別したいのです。条件文でよくあるようなORのようなものって
>ないのでしょうか?
つまりこういうことでしょうか?
or に相当するのは、if文を続けて書けばすむと思います。

IF "%1"=="W" goto NEXTA
IF "%1"=="w" goto NEXTA

("W"でも"w"でもないときの処理を書く場所)

:NEXTA
次の処理



634) Re2:バッチ処理で悩んでます 間違えました 2002/09/11(水) 13:04


説明文を間違えました。
すみませんでした。

IF NOT "%1"=="W" GOTO NEXTA
処理1
GOTO NEXTB
:NEXTA
処理2
:NEXTB
処理3

このとき、一番目の引数がWでもwでも処理1を動かしたいのです。
再度、よろしくお願いします。



636) Re3:バッチ処理で悩んでます じゃく 2002/09/11(水) 16:02


こんにちは。

>IF NOT "%1"=="W" GOTO NEXTA
>処理1
>GOTO NEXTB
>:NEXTA
>処理2
>:NEXTB
>処理3

>このとき、一番目の引数がWでもwでも処理1を動かしたいのです。
言い換えると、
・"W" でも "w" でもないときは、処理2
・"W" か "w" だったら処理1
・処理1か処理2を実行した後に処理3
ということですよね。
前の回答にも書いたように、NOTをつけない形式で
if文を2つ書いて、処理1と2の位置を入れ替えれば
実現できると思います。

IF "%1"=="W" GOTO NEXTA
IF "%1"=="w" GOTO NEXTA
処理2
GOTO NEXTB
:NEXTA
処理1
:NEXTB
処理3




638) Re4:バッチ処理で悩んでます ありがとうございます 2002/09/11(水) 16:47


いろいろありがとうございました。
本当に初心者ですみませんでした。

なぜか、IF NOT~にこだわってしまいました。
いろんな方法を駆使すれば、いんですね。
本当にありがとうございました。

>言い換えると、
>・"W" でも "w" でもないときは、処理2
>・"W" か "w" だったら処理1
>・処理1か処理2を実行した後に処理3
>ということですよね。
>前の回答にも書いたように、NOTをつけない形式で
>if文を2つ書いて、処理1と2の位置を入れ替えれば
>実現できると思います。

>IF "%1"=="W" GOTO NEXTA
>IF "%1"=="w" GOTO NEXTA
>処理2
>GOTO NEXTB
>:NEXTA
>処理1
>:NEXTB
>処理3
 
 


カテゴリー「IF(結果の検査、条件分岐)」索引へ

 

カテゴリー一覧

FPCU/FPCDIY QUICK LINK online
この上の各ジャンル名をクリックすると、下のウィンドウが切り替わります▼


=リンク集のインデックスはこちら=

資料書籍

About

2002年09月11日 10:05に投稿されたエントリーのページです。

ひとつ前の投稿は「SETコマンドの変数内容に"="を含める方法」です。

次の投稿は「「×日前の日付」を計算で算出・取得したい」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

This site is powered by Six Apart
Movable Type 3.33-ja
このブログについて | 運営:有限会社メディアポート