電子書籍の厳選無料作品が豊富!

●条件
 ・\\192.168.*.***のXフォルダにあるファイルAが存在する場合、
  kakunin.batを実行する。
 ・\\192.168.*.***のXフォルダにファイルAが存在しない場合、
  sakusei.batを実行する。

※kakunin.batとsakusei.batは作成済み。

上記の条件でバッチファイルを作成したいのですが、
記述の仕方などがいまいちよくわかりません。
ご存知の方おられましたら、お教え願いたいと存じます。
宜しくお願いいたします。

A 回答 (6件)

更にサンプルです。



@ECHO OFF
SET CHECK=
ECHO \\192.168.*.***のXフォルダのファイルAにデータを移行しましたか?
SET/P "CHECK="移行済みの場合:1、移行していない場合:2を押下。[%CHECK%]:"

IF %CHECK% == 1 goto SHORI1
IF %CHECK% == 2 goto SHORI2
echo 入力値が無効です。
goto EXT
:SHORI2
call iko
:SHORI1
call kakunin
:EXT
    • good
    • 0
この回答へのお礼

ありがとうございます!
とても参考になりました☆

お礼日時:2006/10/24 09:16

では、入力値による判定のサンプルです。



ECHO OFF
SET CHECK=
ECHO \\192.168.*.***のXフォルダのファイルAにデータを移行しましたか?
SET/P "CHECK="移行済みの場合:1、移行していない場合:2を押下。[%CHECK%]:"
IF %CHECK% == 1 call kakunin
IF %CHECK% == 2 call sakusei
    • good
    • 0

CALLで存在チェックという意味でしょうか?


拡張機能で何かあるのかもしれませんがちょっとどういうものかわかりません。

ちなみに、サンプルの「START」は「CALL」でも良いです。
STARTは色々なものを起動しますが、バッチファイルの起動なら逆に
CALLの方が専門です。

この回答への補足

記述してみたところ、「call」の方でうまくいきました。
しかし、新たに条件などが加わって
やはり別の記述にしなければならなくなりました。
(【文字列1==文字列2】というような記述をしたいみたいです。)

(1)・・・\\192.168.*.***のXフォルダのファイルAにデータを移行したか問いかける
 ⇒ 移行済みんの場合:1、移行していない場合:2を押下
(2)・・・1のとき、kakunin.batを実行する
    2のとき、iko.batを実行し、その後、kakunin.batを実行する

上記の場合はどのように作成すればよろしいでしょうか?
宜しくお願いいたします。

補足日時:2006/10/23 16:48
    • good
    • 0

EXISTを使用しないというのはどういう意味でしょうか?


EXISTが存在チェックなので、この条件の場合は外せません。
それとも、仰っているのは下記のように各々判断するパターンでしょうか?

IF EXIST \\192.168.*.***\Xフォルダ\ファイルA START kakunin.bat
IF NOT EXIST \\192.168.*.***\Xフォルダ\ファイルA START sakusei.bat

また、命令が複数に渡るような場合、以下のようにgotoで飛ばしても良いです。

IF EXIST \\192.168.*.***\Xフォルダ\ファイルA goto ARI
<存在しない場合の処理>
goto EXT
:ARI
<存在した場合の処理>
:EXT

この回答への補足

なるほど。
ファイルの存在チェックには“exist”を使用するということなのですね?
【if 文字列 == 文字列】という記述で表示し、
callを用いて実行する方法がある、というようなことを聞いたのですが、
このやり方ではなくexistを使ってYeti21さんのように記述すればよろしいのですね!
ありがとうございます。

補足日時:2006/10/23 13:57
    • good
    • 0

ちょっと訂正です。



IF EXIST \\192.168.*.***\Xフォルダ\ファイルA (START kakunin.bat) ELSE (START sakusei.bat)

この回答への補足

ありがとうございます。
参考にいたします。

ちなみにexistを使用しない記述の仕方ってありますか?
【条件が真 = 処理1】、【条件が偽 = 処理2】のような。
ご存知でしたらこちらも宜しくお願いいたします。

補足日時:2006/10/23 13:01
    • good
    • 0

Xフォルダは共有フォルダという前提のサンプルです。



IF EXIST \\192.168.*.***\Xフォルダ\ファイルA START kakunin.bat ELSE START sakusei.bat
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!