Показать полную графическую версию : Расширение файла: когда BAT, а когда - CMD?
Хотелось бы получить исчерпывающий ответ, в чем разница между двумя возможными расширениями командного файла, есть ли случаи, когда новонаписанный батник должен быть строго bat или строго cmd, или никакой разницы?
AFAIK на современных системах они выполняются идентично. Расширение CMD как batch-файл обрабатывается только в Windows. Полагаю, ввели это чтобы можно было визуально отличать скрипты написанные специально для Windows
CMD как batch-файл обрабатывается только в Windows »
Windows NT и выше
I work in a mixed Windows 2000, Windows NT, and Windows 9x environment. I often build batch files that work properly only under Win2K and NT because the files either call utilities that run only under those OSs or use shell functions that don't exist in Win9x. If a batch file contains portions that don't work under Win9x, running the batch file on Win9x systems can be disastrous.
To prevent problems, when I write batch files that contain no portions that will fail under Win9x, I name the file with a .bat extension, which will run under any Windows version. If I use features that only Win2K and NT support, I name the file with a .cmd extension. Win2K and NT recognize .cmd files as executable and will run them. Win9x doesn't recognize .cmd as an executable file type: If you attempt to run a file with a .cmd extension under Win9x, the OS simply reports a Bad command or file name error message, and no damage is done.
—Chris Taylor
Взято отсюда:
http://windowsitpro.com/article/articleid/21110/bat-vs-cmd.html
http://www.ntsecurity.net/article/articleid/24048/alternative-to-bat-vs-cmd.html
amel27, получается, что для универсальности (запуска на любой ОС) надо использовать расширение bat. Но тогда какой высокий смысл в использовании вообще расширения cmd?
truvo
какой высокий смысл в использовании вообще расширения cmd »как сказано в цитате - исключить запуск CMD-файлов на Windows 9x (во избежание ошибок)
amel27, извините, я просто слишком невнимательно читал цитату, поэтому в предыдущем своем посте сморозил явную чепуху.
В цитате упоминается, что какие-то командные файлы могут работать только под Win2K и NT, а какие-то, напротив, - под любой Windows, в том числе 98. А можно ли где-то в сети ознакомиться с конкретными признаками этих двух групп?
можно ли где-то в сети ознакомиться с конкретными признаками этих двух групп? »
есть некоторые мелкие отличия и среди NT-систем, все тонкости для каждой команды описаны тут:
http://www.robvanderwoude.com/batchfiles.html
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.