В Windows, *.exe, *.bat, *.cmd, и *.com все представляют программы или сценарии оболочки, которые могут быть выполнены, просто путем двойного щелчка по ним. Есть ли какие-либо другие расширения файла, которые указывают, что файл является исполняемым файлом?
Править: Когда я вскакиваю в новый проект (или назад в старый проект!), одна из общих вещей я хочу сделать, когда оглядывание должно узнать, каковы инструменты там. На Unix (который я использовал в течение многих десятилетий), существует выполнить бит, таким образом, это столь же просто как:
find . -executable -type f
Я полагал, что в Windows, который, кажется, имеет намного более сложный механизм для "действительно ли этого, исполняемый файл (и как я выполняю его)", было бы относительно небольшое количество расширений файла, которые будут служить примерно той же цели.
Для моего текущего проекта, *.exe *.bat *.cmd
почти наверняка достаточно, но я полагал, что спрошу, был ли авторитетный список.
Основные "исполняемые" файлы (те, которых Windows надеется выполнять через ПУТЬ) хранятся в переменной окружения под названием PATHEXT. Вы видите это от командной строки:
C:\>set PATHEXT
На моей машине я получаю этот (WinXP):
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.PSC1
Это не эксклюзивный список. Windows также выполнит другие файлы (например, экранные заставки имеют расширение .scr и являются исполняемыми файлами); Windows также позволит выполнение других расширений файла, но те упомянутые выше являются исполняемыми расширениями по умолчанию.
.vbs является сценарием. и .js
Но если бы Вы знаете некоторую историю затем, Вы смогли бы поместить вещи в контекст лучше. Я предполагаю, не использовал ли я компьютеры столько, сколько я имею, я мог бы также сфокусироваться на знании, какие расширения являются исполняемыми файлами.. 'cos они являются довольно захватывающими и кажутся фундаментальными.. и я предполагаю, что они.. Но заметьте, как со временем.COM вымер много после DOS просто главным образом известного, я предполагаю после этого, если вообще, в окнах 9x в command.com окружают. Возможно, старый NTs использовал их много. Сценарии.. vbs пришел win9x время, возможно.. таким образом, новые появляются. ps1 является еще более новым, чем vbs.
.COM очень стар.. я не уверен, полагается ли Windows XP для примеров на какие-либо.COM файлы. Но это имеет command.com больше для приложений прежней версии, которые я предполагаю.
.BAT является сценарием.. назад со дней DOS. все еще используемый сегодня..VBS более современен, но.BAT все еще используется и не выйдет из использования в ближайшее время, и люди разумно используют обоих. Существует.CMD, который я не использовал, но вероятно не настолько отличающийся ни от чего. Существует ps1 (powershell., это более современно, чем vbscript), Если мы говорим сценарии в свободном смысле, существуют.REG
Действительно термин исполняемый файл только относится к EXE и.COM (.COM быть в основном прекратившимся.. больше win9x вещь (командной строкой в win9x был command.com, не было никакого cmd.exe), и файлы COM являются вещью DOS. Но не CMD NT, например, командным процессором NT является cmd.exe хотя, как упомянуто существует command.com в NT, который я предполагаю для приложений прежней версии, но NT по всей вероятности не полагается на него),
.MSC, например, запускаются.. выполненный.. services.msc Они не исполняемые файлы.. Я предполагаю, что они - своего рода сценарий.. services.msc, кажется, записан в xml), Но при движении это освобождает затем, можно было бы перейти шаг вперед в не системные вещи и сказать, что страницы HTML являются той, потому что они интерпретируются.. как сценарий. Но не ОС, хотя...CPL не являются сценариями.. посмотрите на них в блокноте. Люди склонны не думать о них как об исполняемых файлах или сценариях, возможно, потому что только разработчики MS пишут им. (или если другие делают затем, это очень редко!)