Na Atualização dos Criadores , o shell Bash do Windows 10 agora permite que você execute binários do Windows e comandos padrão do Prompt de Comando, direto do Bash. Você pode executar programas Linux e Windows a partir do mesmo shell Bash ou até mesmo incorporar comandos do Windows em um script Bash.
Índice
Aqui estão alguns detalhes básicos que você precisa saber sobre este recurso:
cd
comando para alterar os diretórios de trabalho.Com isso em mente, vamos dar uma olhada em como executar um programa.
Para executar um programa do Windows, digite o caminho para o arquivo .exe do programa no shell do Bash. Lembre-se de que sua unidade Windows C: está disponível em / mnt / c no Bash . O ambiente Bash também faz distinção entre maiúsculas e minúsculas, então você deve especificar a capitalização correta.
Digamos que você queira iniciar o utilitário Ping localizado em C: \ Windows \ System32 \ PING.EXE. Você executaria o seguinte comando:
/mnt/c/Windows/System32/PING.EXE
O seguinte comando não funcionaria, porque o Bash diferencia maiúsculas de minúsculas:
/mnt/c/windows/system32/ping.exe
Isso é um pouco mais complicado se o caminho contiver caracteres complexos, como espaços e colchetes, como as pastas Arquivos de programas. Você precisa “escapar” espaços, colchetes e outros caracteres complexos prefixando-os com um caractere “\”.
Por exemplo, digamos que você queira executar o programa Internet Explorer localizado em C: \ Arquivos de programas (x86) \ Internet Explorer \ iexplore.exe. Você teria que executar o seguinte comando no Bash:
/ mnt / c / Programa \ Arquivos \ (x86 \) / Internet \ Explorer / iexplore.exe
Observe o “\” antes dos caracteres de espaço e colchetes. Esses caracteres devem ser “escapados” ou o Bash não perceberá que os caracteres são parte de um caminho de arquivo.
O shell Bash passa argumentos diretamente para os comandos que você executa.
Por exemplo, se você quiser fazer ping em example.com, execute:
/mnt/c/Windows/System32/PING.EXE example.com
Ou, se você quiser abrir o arquivo hosts do Windows no Bloco de Notas, execute:
/mnt/c/Windows/System32/notepad.exe "C: \ Windows \ System32 \ drivers \ etc \ hosts"
Use o caminho de arquivo padrão do Windows ao passar um caminho de arquivo diretamente para um programa do Windows. Isso porque Bash passa o argumento diretamente. Notepad.exe e outros programas do Windows esperam um caminho de arquivo do Windows.
Alguns comandos do Windows não são arquivos .exe, mas são integrados ao próprio prompt de comando. Por exemplo, isso inclui o dir
comando que você normalmente executa em um Prompt de Comando. Para executar esse comando, você precisa executar o cmd.exe
binário associado ao Prompt de Comando e passar o comando como um argumento com / C, assim:
/mnt/c/Windows/System32/cmd.exe / comando C
Por exemplo, para executar o dir
comando integrado no Prompt de Comando, você executaria o seguinte comando:
/mnt/c/Windows/System32/cmd.exe / C dir
O ambiente dos Serviços do Windows para Linux trata os executáveis do Windows de maneira semelhante à maneira como trata os binários do Linux. Isso significa que você pode adicionar um diretório contendo arquivos .exe ao caminho e, em seguida, executar esses arquivos .exe diretamente. Por exemplo, para adicionar o diretório System32 ao seu caminho, você executaria:
exportar PATH = $ PATH: / mnt / c / Windows / System32
Você pode então executar os arquivos .exe do Windows localizados na pasta System32 diretamente, assim:
PING.exe example.com
notepad.exe
cmd.exe / C dir
A saída de um comando do Windows pode ser canalizada para um comando do Linux e vice-versa. Por exemplo, você pode usar o ipconfig.exe -all
comando para listar detalhes sobre suas interfaces de rede e canalizá-lo para o grep
comando Linux para pesquisar a saída. Por exemplo, para listar todas as informações sobre sua conexão e pesquisar as seções que correspondem a “Endereço IPv4”, você executaria:
/mnt/c/Windows/System32/ipconfig.exe -all | grep "Endereço IPv4"
Esse é o processo básico. Esses comandos também funcionam quando incorporados a um script Bash, portanto, você pode escrever um script Bash que incorpore comandos do Windows e utilitários do Linux. Se for executado no shell Bash, funcionará em um script Bash.
And, if you want to go the other way, you can use the “bash -c” command to run Bash commands from the standard Windows Command Prompt.
RELATED: How to Create and Run Bash Shell Scripts on Windows 10
Muitos aplicativos de limpeza estão disponíveis para Windows ao longo dos anos, mas hoje em…
Seu PlayStation 4 está congelado? Seus jogos favoritos continuam travando? Reiniciar seu PS4 pode resolver…
A popularidade das mensagens de texto significou aprender uma forma totalmente nova de comunicação. Você…
A foto dos "Pilares da Criação" tirada pelo Telescópio Espacial Hubble é uma das fotos…
O Proton Drive saiu de seu estágio beta há algumas semanas, mas o aplicativo real…
Para ver suas fotos mais de perto ou para uma edição precisa , você pode…