O Windows pode usar um shell do Linux em vez do cmd?

15

Eu queria saber se é de alguma forma tecnologicamente possível para o Windows adicionar algum tipo de interface Linux? Eu acho que conquistaria muitos programadores para desenvolver no Windows.

Alguma idéia sobre isso?

Genadinik
fonte
6
Por que não usar o PowerShell?
Steven Evers
3
O Windows não usa o DOS.
User1686
4
Powershell é dolorosamente irritante de usar. Além disso, sua documentação é deplorável.
Brian Vandenberg
Eu concordo @BrianVandenberg. É marginalmente melhor que a linha de comando do DOS, mas muito longe de um shell Unix / Linux.
Philip Kearns

Respostas:

23

Além do Cygwin , mencionado pelo @ChrisF, você também pode instalar uma coleção de ferramentas portadas no Unix que são executadas em um ambiente normal do Windows. Dois exemplos:

Isto permite-lhe estar em um comando comandos rápida e uso, tais como grep, ls, awke assim por diante. Depois de colocar a pasta extraída no caminho do ambiente, a experiência de usá-las é bastante uniforme e combina bem:

insira a descrição da imagem aqui

Gaff
fonte
18

Dê uma olhada no Cygwin . Está

uma coleção de ferramentas que fornecem um ambiente de aparência Linux para Windows.

(retirado da página inicial).

ChrisF
fonte
Sim, eu sei sobre Cygwyn, mas estava perguntando por que eles não se integram mais? É irritante ter que instalar um novo software quando ele também já pode fazer parte do seu sistema.
Genadinik 2/11/11
5
@ Genadinik - você deveria ter incluído isso na sua pergunta;). Não há suporte nativo (nem posso ver por que a Microsoft gostaria de incluí-lo); portanto, você fica com a instalação de um aplicativo de terceiros.
ChrisF
5

A execução do Cygwin instalará vários shells linux familiares, como bash e tcsh, e permitirá que você execute os shells no Windows, mas também execute aplicativos Linux diretamente da linha de comando do Windows.

Verifique se todos os /bin/diretórios instalados no Cygwin estão na sua variável PATH do Windows e se você pode ter a experiência híbrida do Windows / Linux no Windows. Even ls.

Resorath
fonte
3

MSYS é um conjunto de ferramentas GNU para Windows, o instalador pode ser encontrado aqui . (instale apenas o MSYS, não o MinGW)

Em seguida, você precisará adicionar ferramentas MSYS à sua variável PATH: execute a systempropertiesadvancedpartir da janela Executar ( Win+ R), clique em Variáveis ​​de ambiente e encontre Variável de caminho na caixa inferior, adicione um ponto-e-vírgula e o caminho do MSYS (o padrão é C:\MinGW\msys\1.0\bin).

Também é bom ter o bash no Windows, então você deve considerar adicionar C:\MinGW\msys\1.0também (o bash será iniciado por comando msys, não bash!). As alterações serão totalmente aplicadas após o novo registro.

Ferramentas adicionais como o vim podem ser facilmente pesquisadas no Google e adicionadas de maneira semelhante.

gronostaj
fonte
2

Outra oportunidade é usar o WSL - Windows Subsystem for Linux . Uma festança nativa é fornecida.

insira a descrição da imagem aqui

GABIKA6
fonte
Vale a pena acrescentar que ele está disponível apenas para Windows 10+.
Thiagowfx 17/10
1

Além das respostas já mencionadas (Cygwin é meu favorito), a Microsoft também está trabalhando para trazer oficialmente o shell Bash para o Windows. Ainda está em beta neste momento, mas você pode conferir aqui: https://msdn.microsoft.com/en-us/commandline/wsl/about . Se você deseja instalá-lo, precisará da Atualização de Aniversário do Windows 10, compilação 14393 ou posterior.

Emoticon Pontual
fonte
0

Existe o Ubuntu portátil para Windows.

Ele roda o Ubuntu como um aplicativo do Windows, em vez de ter que inicializá-lo separadamente.

Brian Vandenberg
fonte
11
Bocejo, ele não pediu uma VM.
Mathepic
@mathepic - Não é uma VM.
Brian Vandenberg
11
do artigo (como sua página inicial é um link quebrado), parece que é uma VM que se integra ao Windows.
Mathepic
@mathepic - Como você apontou, o link da página inicial está quebrado. Eu vou remover isso. No entanto, a seguinte entrada da Wikipedia faz backup da minha declaração: en.wikipedia.org/wiki/…
Brian Vandenberg