Linuxはシェバン行を使用してスクリプト言語に使用するインタープリターを決定することを理解していますが、バイナリに対してはどのように機能しますか?
つまり、Linuxバイナリを実行でき、wineとmono、Windowsネイティブと.NETバイナリの両方をインストールしたということです。そして、それらのすべてについて、それ./binary-name
を実行するのは(PATHにない場合)ただです。
Linuxは、特定のバイナリをLinuxネイティブバイナリ、Windowsネイティブバイナリ(ワイン機能を使用)、またはWindows .NETバイナリ(モノ機能を使用)として実行する必要があるとどのように判断しますか?