バッチファイル【*.bat】の名前をコマンドと同じにすると無限ループするので注意!

050-VBA

へっぽこヘタレシステム管理者の管理人です。

ひさびさに、システムトラブル(ヒューマンエラー)により・・・

AD【アクティブディレクトリー】のグループポリシーにログオンスクリプとを仕込むことになったのですが・・・

かなり久々の作業でしたので・・・

ほぼ完全に忘れており、簡単なバッチファイルの仕込みにかなり手こずりました。

まず、スタンドアロンで起動するバッチファイルを作ったのですが・・・

これがうまく動きません・・・

原因が分かってしまえば、単純なのですが・・・

最初それが分からずに、無駄に時間を浪費してしまいました。

コマンドとバッチファイルのファイル名を同じにすると・・・

さて、バッチファイルを作った時は、ファイルのファイ名を考えるのが面倒くさく・・・

コマンドと同じ名前を付けたのですが・・・

これが失敗でした。

上の画像は、一例ですが・・・

例えば・・・

【ping】を打つコマンドのバッチファイルを【ping.bat】とすると・・・

画面が、無限ループとなります。

おそらくですが・・・

バッファイファイル内の【ping】を実行すると・・・

【ping.exe】ではなく・・・

自分自身である【ping.bat】を実行してしまい、無限ループとなる様です。

これを避けるには・・・

下図の様にコマンドの記述を明示的に【ping.exe】とすると回避できるようです。

スポンサーリンク

回避方法はコマンドとファイル名を同じにしないこと

スポンサーリンク

といことで、この問題が発生しない様に回避するには・・・

コマンドとバッチファイルのファイル名を同じにしないことです。

この解決方法を、知ってからですが・・・

ブログランキングにご協力ください!
ブログランキング・にほんブログ村へ

そういえば、ずいぶん前に同じことで悩んだことがあり、解決策も認識していたことを思い出しました。

今回は、すっかり忘れていたのですが・・・

まったく下らない事で時間を浪費しました。

文字コードも注意

また、日本語が含まれるバッチファイルを作成する際には・・・

文字コードも重要な様です。

Windows標準のメモ帳を使うと・・・

文字コードは【utf-8】となりますが・・・

日本語が含まれる場合は【ANSI】で保存する必要があります。

他のテキストエディタが使える場合は【SHIFT-JIS】でも問題ありません。

ブログ開設に必要なドメイン取得、サーバーレンタル、ASPの登録等は、こちらのサイトから!

コメント

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