ちょっと興味があるんだけど。当社の「クール」な人は常に* .cmdを使用しますが、誰も私に違いを説明できませんでした。
ちょっと興味があるんだけど。当社の「クール」な人は常に* .cmdを使用しますが、誰も私に違いを説明できませんでした。
回答:
それぞれに使用されるコマンド言語には意味的な違いがあり.bat
ます(ファイルは互換バージョンを取得します)。これらのいくつかは、このスクリプトでここから説明できます。
@echo off&setlocal ENABLEEXTENSIONS
call :func&&echo/I'm a cmd||echo/I'm a bat
goto :EOF
:func
md;2>nul
set var=1
基本的に、.cmd
ファイルはMSコマンド言語の現在のよりセクシーなバージョンを取得するため、クールな子供たちはファイルを使用します。
ウィキペディアによると:
.bat:Microsoftがバッチファイルに使用する最初の拡張子。この拡張機能は、MS-DOSおよびMicrosoft Windowsのほとんどのバージョンを含む、ほとんどのMicrosoftオペレーティングシステムで実行できます。
.cmd:新しい.cmd拡張子は、Windows NTベースのシステムでは「Windows NTコマンドスクリプト」として説明されており、.bat拡張子ではなく.cmd拡張子を使用すると、以前のバージョンのWindowsがどのようにCOMMAND.COMスタイルファイルのコマンドを間違えようとせず、コマンド拡張機能がないために新しいスタイルコマンドを実行できず、スクリプトが部分的にしか実行されないため、破損する可能性があります例:ファイルのコピーが成功したかどうかの確認に失敗してから、元のファイルを削除します)。
.cmdファイルと.batファイルの処理の唯一の既知の違いは、.cmdファイルでは、コマンド拡張機能(コマンド拡張機能が有効な場合)の影響を受けるコマンドが成功してもERRORLEVEL変数が変化するのに対して、.batファイルではERRORLEVEL変数エラーが発生した場合にのみ変更されます。
お役に立てれば。