Linux上でC#を触り始めたのだが、少し不思議に思うことがあったので書いてみた。 Linux上でC#を実行 C#でHelloWorldプログラムを書く // Hello.cs namespace Hello{ using System; class HelloWorld{ public static void Main(){ Console.WriteLine("Hello World!"); } } } Linux上でmcsを使用してコンパイル。 exeができあがるのでそのまま実行。 $ mcs Hello.cs $ ./Hello.exe Hello World!上出来。それにしても拡張子exeなんだ。。。 ものは試しと、できたHello.exeをWindows上にコピーしてコンソールで実行してみる。 > Hello.exe Hello World!なんとそのまま実行されたではないか