Le shell Bash de Linux arrive sur Windows, grâce à une collaboration entre Microsoft et le créateur d’Ubuntu, Canonical. Taper frapper dans le menu Démarrer de Windows 10, et vous pourrez obtenir instantanément un environnement de ligne de commande Linux complet.
De nombreux développeurs préfèrent Linux – et même Mac OS X, qui inclut également le shell Bash – en raison de son accès à tout un univers d’utilitaires qui ne fonctionnent souvent pas sous Windows. L’ajout du shell Bash à Windows n’est qu’une autre façon pour Microsoft d’essayer de rendre Windows plus attrayant pour les développeurs Linux. N’oubliez pas que le service d’hébergement cloud Azure de Microsoft peut également exécuter des serveurs Linux.
Ce n’est pas une machine virtuelle ou un conteneur
Avant cela, vous pouviez utiliser Bash sous Windows, mais via des machines virtuelles lourdes ou en accédant à distance à une session Bash exécutée sur un serveur distant quelque part. Il y a aussi Cygwin, une solution hacky proposant une variété d’outils Linux recompilés pour Windows. Beaucoup de gens ont supposé que la compatibilité Linux de Windows 10 serait quelque chose dans ce sens. Mais ils avaient tort. C’est plus génial.
Cette solution sera une application disponible dans le Windows Store, et elle fournira une image Ubuntu complète qui s’exécute dans l’espace utilisateur en tant que programme sur votre bureau. Les programmes compilés pour Linux fonctionneront simplement sans même avoir besoin d’être recompilés pour Windows. Vous pouvez utiliser la commande apt-get d’Ubuntu pour télécharger et installer des programmes, et cela fonctionnera. Les développeurs peuvent écrire des scripts Bash et les exécuter sous Windows. C’est apparemment aussi rapide que d’exécuter les mêmes utilitaires en mode natif sur Ubuntu Linux.
Tout cela grâce à un nouveau sous-système discrètement placé dans Windows 10 build 14251 en janvier. Les fichiers lxcore.sys et lxss.sys forment le nouveau « sous-système Windows pour Linux (WSL) ».
Dustin Kirkland de Canonical est ravi de la technologie et l’explique ainsi : « Une équipe de développeurs pointus de Microsoft a travaillé dur pour adapter certaines technologies de recherche Microsoft pour effectuer essentiellement la traduction en temps réel des appels système Linux en appels système Windows. Les geeks de Linux peuvent le considérer comme une sorte d’inverse du « vin » : les binaires Ubuntu s’exécutant nativement dans Windows. »
Apt-get fonctionne exactement comme sur Ubuntu, avec un accès aux mêmes packages logiciels.
La solution de Microsoft est étonnamment capable. Vous obtenez exactement les mêmes utilitaires Linux et ils s’exécuteront directement sur votre système Windows. Bien que Bash soit en bac à sable, vous pouvez accéder à votre système de fichiers via le shell et travailler avec les fichiers et dossiers de votre ordinateur. Vos utilitaires Linux et vos programmes Windows auront accès au même ensemble de fichiers.
Mais il a certaines limites. Ce sera une technologie bêta lors de son lancement, et tout ne fonctionnera pas correctement dès le départ.
Comme le note Microsoft, “Il s’agit d’un ensemble d’outils de développement pour vous aider à écrire et à créer tout votre code pour tous vos scénarios et plates-formes.” Ce n’est pas une machine virtuelle Ubuntu complète. Vous ne pouvez pas l’utiliser pour héberger des serveurs, comme vous le pourriez sous Linux. Si vous en avez besoin, vous pouvez toujours installer Linux sur une machine virtuelle à l’aide de la technologie Hyper-V de Microsoft, VirtualBox, VMware ou quelque chose de similaire.
Ne vous attendez pas non plus à un bureau Linux graphique. “Nous ne travaillons également qu’en ligne de commande”, déclare Russ Alexander de Microsoft dans une vidéo. “C’est une question de développeur.”
Enfin, ces outils Bash ne pourront interagir directement avec aucun outil Windows. Vous ne pouvez pas exécuter une commande Bash à partir de PowerShell ou une commande Windows à partir de Bash. Cela signifie que vous ne pouvez malheureusement pas utiliser les scripts Bash pour automatiser les commandes Windows. Les outils de ligne de commande Bash ont accès aux mêmes fichiers que Windows, mais c’est tout !

Les commandes Bash peuvent interagir avec votre système de fichiers Windows normal.
Voici comment vous pouvez l’obtenir
Cette fonctionnalité n’est pas encore disponible, mais elle est en route. Il fera partie de la version stable de Windows lors de la sortie de la mise à jour anniversaire de Windows 10 cet été. Jusque-là, vous devrez être sur la piste Insider Preview pour obtenir la dernière version instable de Windows 10 “Redstone”.
Une application Bash basée sur Ubuntu 14.04 LTS sera bientôt ajoutée au Windows Store, suivie d’une application basée sur Ubuntu 16.04 LTS une fois qu’Ubuntu 16.04 LTS sera lancé le 21 avril.
Vous voulez en savoir plus ? Il y a beaucoup d’informations là-bas maintenant. L’annonce de Microsoft couvre les bases et Scott Hanselman de Microsoft fournit quelques informations de base. Dustin Kirkland de Canonical fournit une explication destinée aux lecteurs familiarisés avec Linux. Vous pouvez également regarder une vidéo informative de 30 minutes mettant en vedette Hanselman, Kirkland et d’autres personnes qui ont travaillé sur le projet.