30Jun

Como executar comandos Linux de fora do shell Bash no Windows 10

O Windows 10 inclui um "Subsistema Windows para Linux" subjacente para executar aplicativos Linux, mas só é acessível através do shell Bash. No entanto, existe uma maneira de executar aplicativos Linux sem primeiro iniciar uma janela do Bash.

Isto é possível graças ao comando bash -c. Use-o para executar comandos do Linux via Command Prompt e PowerShell, ou mesmo criar um atalho da área de trabalho que executa um comando ou programa Linux quando iniciado.

Como executar comandos Linux no prompt de comando ou PowerShell

Antes de fazer isso, você precisará instalar e configurar o shell do Bash do Windows 10.Depois de você, você pode abrir uma janela do Prompt de Comando e executar o seguinte comando para executar o software Linux fora de uma janela do Bash:

bash -c "comando"

Por exemplo, digamos que você queria instalar o pacote emacs via apt-get. Você executaria o seguinte comando em uma janela do prompt de comando:

bash -c "sudo apt-get install emacs"

Quando você usa bash -c, o Windows iniciará um shell Bash em segundo plano e passará o comando para ele. O comando será executado até que seja feito e depois saia, juntamente com o shell do Bash. Qualquer saída de terminal que o comando atual execute exibirá diretamente na janela do prompt de comando, em vez de uma janela separada do shell do Bash.

Este truque também permite que você execute comandos do Linux no PowerShell, assim como você executaria um executável normal do Windows. Você pode fazer isso executando diretamente o arquivo. exe como você faria em uma janela do prompt de comando ou por qualquer outro método para executar executáveis ​​no PowerShell.

bash -c "uname -a"

Como com uma janela de prompt de comando, a saída do comando aparecerá diretamente no PowerShell. Esses métodos podem ser usados ​​para adicionar comandos do Linux a um arquivo em lote ou ao script do PowerShell também.

Como executar comandos do Linux a partir da caixa de diálogo Executar ou menu Iniciar

Este truque também funciona para executar comandos da caixa de diálogo Executar, menu Iniciar ou qualquer iniciador de aplicativos de terceiros.

Por exemplo, para iniciar vi da caixa de diálogo Executar, você pressionaria Windows + R em seu teclado e então executaria o seguinte comando:

bach -c "vi"

O editor de texto vi aparecerá em sua própria janela.

Isso também funciona para o menu Iniciar, para que você possa digitar o mesmo comando diretamente no menu Iniciar e pressionar Enter para executá-lo como um comando.

Como executar comandos do Linux com um atalho da área de trabalho

O comando bash-c também possibilita o lançamento de aplicativos Linux através de um atalho da área de trabalho. Por exemplo, digamos que você queria iniciar o editor de texto vi através de um atalho no desktop. Você deveria clicar com o botão direito na área de trabalho, apontar para Novo & gt;Novo atalho e digite o seguinte destino:

bash -c "vi"

Agora você pode salvar o atalho e ele irá iniciar vi quando você clicar duas vezes nele.

Curiosamente, esse truque também funciona para o lançamento de aplicativos gráficos em Linux a partir de um atalho no desktop. Instale um servidor X e configure aplicações gráficas de desktop Linux. Você deve ser capaz de criar atalhos para iniciá-los diretamente.

No entanto, você teria que iniciá-los assim:

bash -c "DISPLAY =: comando 0"

Enquanto você pode iniciar comandos do Bash de outro lugar no Windows, não há como executar o software Windows ou executáveis ​​diretamente de um shell Bashjanela.