Когда я запускаю скрипт .bat из bash в Cygwin, по какому механизму он работает? Я понимаю, что если я запущу .EXE, он запустится, независимо от того, создан ли .EXE из Cygwin или из более традиционной среды. Я понимаю, что когда я запускаю исполняемый скрипт с #! в начале Cygwin предоставляет магию для его работы.
Но почему скрипт .bat работает? Есть ли какой-то компонент внутри Cygwin, который знает, что такое скрипт Windows .bat и что с ним делать? Или дело в том, что под Windows каким-то образом невозможно выполнить вызов для запуска файла .EXE, который не будет автоматически работать для сценария .bat вместо этого?