|
360) 文字列検索 及び 戻り値セット かず 2003/07/02(水) 18:25 |
|
あるファイルに特定の文字列が存在すれば戻り値 0(EXIT 0) 存在しなければ 戻り値 1(EXIT 1)を返すDOSバッチを作成したいのですが、具体的にどうのような形式になるでしょうか。 FINDで検索して存在すれば EXIT 0 すればよいのではと考えていますが、”存在すれば”部分をどう判断させればよいのでしょうか? IF だとERRORLEVEL などしか判断対象にできないようなのですが・・・ |
|
362) Re:文字列検索 及び 戻り値セット Cipher 2003/07/02(水) 18:55 |
|
>あるファイルに特定の文字列が存在すれば戻り値 0(EXIT 0) >存在しなければ 戻り値 1(EXIT 1)を返すDOSバッチを作成したいのですが、具体的にどうのような形式になるでしょうか。 >FINDで検索して存在すれば EXIT 0 すればよいのではと考えていますが、”存在すれば”部分をどう判断させればよいのでしょうか? >IF だとERRORLEVEL などしか判断対象にできないようなのですが・・・ Windows2000なら、やりたいと思われることとちょっと違いますが 以下のようにすればできました。 ※文字列の検索ではなく、以下の例の場合ファイルの有無ですが、、、 DIR /B | FIND /N /C "対象ファイル">Exist.txt SET /P EXIST=<Exist.txt DEL Exist.txt echo."対象ファイル"有無:%Exist% のようにしてやったことがあります。 DIR のところを TYPE にすればいけるかもしれません。 |
|
364) Re:文字列検索 及び 戻り値セット じゃく 2003/07/02(水) 19:38 |
|
>あるファイルに特定の文字列が存在すれば戻り値 0(EXIT 0) >存在しなければ 戻り値 1(EXIT 1)を返すDOSバッチを作成したいのですが、具体的にどうのような形式になるでしょうか。 >FINDで検索して存在すれば EXIT 0 すればよいのではと考えていますが、”存在すれば”部分をどう判断させればよいのでしょうか? >IF だとERRORLEVEL などしか判断対象にできないようなのですが・・・ OSが不明なのですが、XPで実験してみたところ、 find で指定した文字列が存在すると errorlevel が 0、 存在しないと errorlevel が1だったので そのままセットしています。 find "特定の文字列 " hoge.txt exit %errorlevel% |