Compilando / executando um arquivo de origem C # no prompt de comando

Como você compila e executa um arquivo .cs a partir de uma janela de prompt de comando?

CSC.exe é o compilador CSharp incluído no .NET Framework e pode ser usado para compilar a partir do prompt de comando. A saída pode ser um executável (.exe) se você usar / target: exe ou uma DLL se você usar / target: library. O CSC.exe é encontrado no diretório do .NET Framework, por exemplo, para .NET 3.5, c:\windows\Microsoft.NET\Framework\v3.5\ .

Para executá-lo, primeiro abra um prompt de comando (clique em Iniciar … e digite cmd.exe ). Você pode então ter que digitar no diretório que contém seus arquivos de origem.

Execute o compilador C # desta forma:

  c:\windows\Microsoft.NET\Framework\v3.5\bin\csc.exe /t:exe /out:MyApplication.exe MyApplication.cs ... 

(tudo em uma linha)

Se você tiver mais de um módulo de origem para ser compilado, você pode colocá-lo na mesma linha de comando. Se você tiver outros assemblies para referência, use /r:AssemblyName.dll .

Certifique-se de ter um método Main () estático definido em uma de suas classs para atuar como o “ponto de input”.

Para executar o EXE resultante, basta digitar MyApplication seguido por no prompt de comando.

Este artigo no MSDN entra em mais detalhes sobre as opções para o compilador de linha de comando. Você pode incorporar resources, definir icons, assinar assemblies – tudo o que você poderia fazer no Visual Studio.

Se você tiver o Visual Studio instalado, no menu Iniciar (em Ferramentas do Visual Studio) você pode abrir um “Prompt de comando do Visual Studio” que irá configurar todas as variables ​​de ambiente e caminho necessárias para a compilation de linha de comando.

Embora seja muito útil saber disso, você deve combiná-lo com o conhecimento de algum tipo de ferramenta de compilation, como NAnt , MSBuild , FinalBuilder etc. Essas ferramentas fornecem um ambiente de compilation completo, não apenas o compilador básico.

Em um Mac

Em um Mac, a syntax é semelhante, apenas o C Sharp Compiler é chamado apenas de csc :

 $ csc /target:exe /out:MyApplication.exe MyApplication.cs ... 

Então, para executá-lo:

 $ mono MyApplication.exe 

Você pode compilar um programa C #:

c:> csc Hello.cs

Você pode rodar o programa

c:> Olá

Outra maneira de compilar programas C # (sem usar o Visual Studio ou sem tê-lo instalado) é criar uma variável de usuário em variables ​​de ambiente, ou seja, “PATH”.

Copie o seguinte caminho nesta variável:

“C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319”

ou dependendo de qual .NET seu PC possui.

Então você não precisa mencionar todo o caminho toda vez que compilar um código. Simplesmente use

“C: \ Users \ UserName \ Desktop> csc [opções] nome_do_arquivo.cs”

ou onde quer que esteja o caminho do seu código.

Agora você está bem para ir.

Embora seja definitivamente bom saber como criar na linha de comando, para a maioria dos trabalhos pode ser mais fácil usar um IDE. A edição C # express é gratuita e muito boa para o dinheiro;

Alternativamente, coisas como snippy podem ser usadas para executar fragments de código C #.

Finalmente – note que a linha de comando é específica da implementação; para MS, é csc ; para mono , é gmcs e friends …. Da mesma forma, para executar: é apenas “exename” para a versão MS, mas tipicamente “mono exename” para mono.

Finalmente, muitos projetos são construídos com ferramentas de script de construção; MSBuild , NAnt , etc.

Você pode criar seus arquivos de class no prompt do VS Command (para que todas as variables ​​de ambiente necessárias sejam carregadas), e não na janela de comando padrão do Windows.

Para saber mais sobre a construção de linha de comando com csc.exe (o compilador), consulte este artigo .

LinqPad é uma maneira rápida de testar alguns códigos C #, e é grátis.

Para a versão mais recente, primeiro abra uma janela do Powershell, vá para qualquer pasta (por exemplo, c:\projects\ ) e execute o seguinte

 # Get nuget.exe command line wget https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile nuget.exe # Download the C# Roslyn compiler (just a few megs, no need to 'install') .\nuget.exe install Microsoft.Net.Compilers # Compiler, meet code .\Microsoft.Net.Compilers.1.3.2\tools\csc.exe .\HelloWorld.cs # Run it .\HelloWorld.exe 

Um exemplo HelloWorld.cs

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

Você também pode tentar o novo interpretador C #;)

 .\Microsoft.Net.Compilers.1.3.2\tools\csi.exe > Console.WriteLine("Hello world!"); Hello world! 

Depois de escrever o código c # e salvá-lo. Você pode usar o prompt de comando para executá-lo exatamente como o outro código.

No prompt de comando, você insere o diretório no qual seu arquivo está e digita

Compilar:

 mcs yourfilename.cs 

Executar:

 mono yourfilename.exe 

se você quiser que seu arquivo .exe seja diferente com um nome diferente, digite

Compilar:

 mcs yourfilename.cs -out:anyname.exe 

Executar:

 mono anyname.exe 

Isso deve ajudar!

Aqui está como instalar o MSBuild com o compilador C # 7.0 autônomo que não está mais incluído no mais recente .NET Framework 4.7:

É possível instalar um compilador C # sem o Visual Studio?

Então apenas corra

"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\Roslyn\csc.exe" MyApplication.cs

para compilar um único arquivo de origem para executável.

Observe também que o .Net Core não suporta a compilation de um único arquivo de origem sem projeto pré-configurado.