我们可以从Bash脚本调用或执行C#源代码吗?
我需要回答的唯一问题是,我们是否可以使用*.cs文件或运行Microsoft Visual Studio从Bash脚本或Linux命令提示符创建的*.exe文件?您可以在命令提示符中使用以下语句运行在Linux上用我们可以从Bash脚本调用或执行C#源代码吗?,c#,linux,bash,mono,execute,C#,Linux,Bash,Mono,Execute,我需要回答的唯一问题是,我们是否可以使用*.cs文件或运行Microsoft Visual Studio从Bash脚本或Linux命令提示符创建的*.exe文件?您可以在命令提示符中使用以下语句运行在Linux上用Mono创建的.NET exe文件: mono myprogram.exe 在Windows上使用Visual Studio创建的可执行文件不能由Mono运行。正如@AWSLC所建议的,您可以使用如下命令使用Wine之类的东西运行它: wine myprogram.exe 如果您使
Mono创建的.NET exe文件:
mono myprogram.exe
在Windows上使用Visual Studio创建的可执行文件不能由Mono运行。正如@AWSLC所建议的,您可以使用如下命令使用Wine之类的东西运行它:
wine myprogram.exe
如果您使用的是Wine,请记住它是linux之上的一个兼容层,因此我推荐Mono作为更安全的方法
如果你是从一个.cs文件开始,你不能用mono运行它,因为它显然不是一个可执行文件。您可以首先使用以下命令编译它:
mcs myprogram.cs
如果在Visual Studio中生成的.cs代码与Mono框架兼容,编译器将生成一个exe文件,您可以使用上面的Mono
命令运行该文件。除非使用.NET编译器生成*.cs文件,否则无法运行该文件
*.exe文件只能在windows计算机上运行,除非您在linux上使用wine之类的应用程序来模拟windows程序
然而,像mono这样的编译器可以将*.cs文件编译成可以在linux和mac机器上执行的二进制文件。您不能直接执行exe,但可以使用类似的方式来运行它。今天,使用.NET Core,您可以从Windows和linux命令行或脚本中执行#C代码。例如:
test.cs
Console.WriteLine("Hello World");
控制台
>dotnet script test.cs
Hello World
但是,在windows上创建的.net exe文件可以由mono运行,vica也可以运行(假设它们不使用任何特定于平台的东西)。请参见使用mono,您可以在linuxwith mono上执行c#exe,您可以在linuxYes上执行c#exe,但只能使用mono创建exe。