スポンサーリンク

batファイルを実行したらエラーが出て止まらない

SQL Server
スポンサーリンク

robocopyコマンドでデータをNASへミラーするbatファイル作って実行したら、エラーが出てとまらないのです。
コマンドに間違いはないのですが。。。

今回はサーバのデータをNASにミラーリングする必要があって、いろんなソフトウェアがある中、robocopyコマンドを使うことになりました。

batファイルに記載したのは下記の4行。

@echo off
forfiles /P D:\backup /D -7 /M robocopy_*.log /C "cmd /c del @file"
set LOGNAME="D:\backup\robocopy_%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.log"
robocopy D:\backup \\192.168.1.10\backup /MIR /R:0 /DCOPY:DAT /LOG+:%LOGNAME% /NP

これを実行すると・・・。

「指定した検索条件でファイルが見つかりませんでした。」と出て止まらないのです。

1行ずつコマンドプロンプトで実行すると問題なくミラーできるのですが、batファイルだと失敗するのです。

あれこれ試した結果、batファイルのファイル名が悪いことに気がつきました。

このbatファイルに付けた名前が「robocopy.bat」。

これを「robomir.bat」と名前変更して実行すると問題なく実行できました。

そういえばWindows XP の頃にコマンド名と同じbatファイル名を付けてはいけなかったなと。
Windows 7の頃には改善されて同じ名前を付けても良くなっていたので忘れてました。
また、Windows10ではこの問題は起きなかったのですが、今回の問題はWindows Serve 2019 STDで起こりました。

同じような時期のOSなのに違いがあるのですねぇ。

コメント

タイトルとURLをコピーしました