Como executar comandos do 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 por meio do shell Bash. No entanto, existe uma maneira de executar aplicativos Linux sem primeiro iniciar uma janela de Bash..
Isso é possível graças ao bash -c
comando. Use-o para executar comandos do Linux por meio do Prompt de Comando e do PowerShell ou até mesmo criar um atalho na área de trabalho que execute um comando ou programa do Linux quando for iniciado.
AtualizarSe você tiver vários ambientes Linux instalados, poderá usar o comando wslconfig para escolher o ambiente Linux padrão. Há também uma maneira de executar comandos em ambientes Linux específicos.
Como executar comandos do Linux no prompt de comando ou no PowerShell
Antes de fazer isso, você precisará instalar e configurar o shell Bash do Windows 10. Depois disso, você pode abrir uma janela do Prompt de Comando e executar o seguinte comando para executar o software Linux fora de uma janela de Bash:
bash -c "comando"
Por exemplo, digamos que você queira instalar o pacote emacs via apt-get. Você executaria o seguinte comando em uma janela do prompt de comando:
bash -c "sudo apt-get instala o 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, em seguida, sair, juntamente com o shell Bash. Qualquer saída de terminal que o comando atual execute aparecerá diretamente na janela Prompt de Comando, em vez de uma janela separada do shell Bash.
Esse truque também permite executar comandos do Linux no PowerShell, da mesma forma que você executaria um executável normal do Windows. Você pode fazer isso executando diretamente o arquivo .exe como faria em uma janela do Prompt de Comando ou por meio de qualquer outro método para executar executáveis no PowerShell.
bash -c "uname -a"
Como com uma janela do prompt de comando, a saída do comando aparecerá diretamente no PowerShell. Esses métodos também podem ser usados para adicionar comandos do Linux a um arquivo em lotes ou a um script do PowerShell.
Como executar comandos do Linux na caixa de diálogo Executar ou no menu Iniciar
Esse truque também funciona para executar comandos a partir da caixa de diálogo Executar, do menu Iniciar ou de qualquer iniciador de aplicativos de terceiros.
Por exemplo, para iniciar o vi na caixa de diálogo Executar, pressione o Windows + R no teclado e execute 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, então você pode 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 na área de trabalho
o bash -c
O comando também possibilita o lançamento de aplicativos Linux por meio de um atalho na área de trabalho. Por exemplo, digamos que você queira iniciar o editor de texto vi por meio de um atalho na área de trabalho. Você clica com o botão direito do mouse na área de trabalho, aponta para Novo> Novo atalho e insere o seguinte destino:
bash -c "vi"
Agora você pode salvar o atalho e ele iniciará o vi quando você clicar duas vezes nele.
Curiosamente, este truque também funciona para o lançamento de aplicativos gráficos do Linux a partir de um atalho na área de trabalho. Instale um servidor X e configure aplicativos de desktop gráficos para Linux. Você deve ser capaz de criar atalhos para iniciá-los diretamente.
No entanto, você teria que lançá-los assim:
bash -c "DISPLAY =: 0 comando"
Embora você possa iniciar comandos Bash de qualquer lugar no Windows, não há como executar softwares ou executáveis do Windows diretamente de uma janela do shell Bash.