簡體   English   中英

從Linux上的命令行啟動C#程序

[英]Start C# program from command line on Linux

我應該用什么命令從Linux命令行啟動這個C#程序? 我已經編譯了它(使用Monodevelop),但我不知道如何從命令行啟動它。

using System;
class ExampleClass
{
    static void Main()
    {
        Console.WriteLine("Hello, world!");
    }
}

在Linux上啟動C#(或任何其他.NET)程序所需的命令行取決於您如何配置Linux系統。

標准答案是運行mono程序,並將可執行程序集的名稱作為參數傳遞。 可執行程序集的名稱通常與項目文件的名稱相同,但您可以輕松更改它; 在完成編譯后,只需查找以.exe結尾的文件。 它將在名為bin\\Debugbin\\Release或類似的文件夾中找到(它取決於您如何設置項目構建設置)。 因此,如果您構建了一個名為hello.exe的程序,您將進入項目文件夾並運行:

~/projects/hello $ mono bin\Debug\hello.exe

您需要運行mono程序的原因是因為Linux默認情況下不知道如何自動運行.NET運行時。 當您在Windows上安裝.NET時,它實際上會更改加載程序的操作系統部分,因此Windows只會自動識別.NET程序並加載運行時。 在Linux上,您需要首先運行mono程序來自己完成。

如果在Linux上運行大量托管代碼,還可以將Linux內核配置為與Windows相同的方式。 Linux支持“其他二進制格式”,允許您告訴Linux如何執行非本機Linux格式的二進制文件。 這有點高級 - 它可能需要你構建一個自定義內核,但如果你的Linux發行版有更好的方法,我也不會感到驚訝。 有關此過程的更多信息,請訪問:

http://www.kernel.org/doc/Documentation/mono.txt

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM