Windows 10 : comment installer et utiliser la console bash d’Ubuntu

La mise à jour anniversaire de Windows 10 permet l’installation en quelques clics de la console bash d’Ubuntu. Cette console permet de contrôler son ordinateur via des commandes écrites dans un langage de programmation interprété, le bash. Et ainsi profiter des avantages de l’écosystème Linux sans double partition de boot ou virtualisation !

Comment installer la console bash d’Ubuntu sous Windows 10

Pour vous lancer, il faut bien sûr posséder une license de Windows 10 et lui avoir appliqué la mise à jour anniversaire (Anniversary Update) sortie au début du mois. Dans un premier temps, nous allons ensuite activer le Mode développeur :

Une fois le Mode développeur activé, il faut également activer le Sous-système Windows pour Linux (bêta). Pour cela :

Windows va alors vous demander de redémarrer votre machine. Et vous demandera ensuite de choisir un nom d’utilisateur Linux. A votre retour, ouvrez le menu Démarrer : et voilà, vous avez désormais l’application Bash Ubuntu !

Console bash Ubuntu : les premiers pas

Pour commencer, si vous n’avez jamais utilisé de shell Linux, il faut savoir au moins quelques petits trucs. Par exemple, sous Linux, pas d’antislash (\) pour séparer les dossiers lorsqu’on tape leur chemin comme dans cmd. Mais un slash (/) plus accessible sur de nombreux claviers.

Pour accéder à la racine du disque on ne tape pas c: mais cd /mnt/c. La commande dir pour lister les fichiers contenus dans un dossier devient ls. Ah et l’un des faux-amis les plus courants est sans doute ipconfig pour connaître vos paramètres réseau qui devient ifconfig (un outil au passage très détaillé).

Le langage bash que vous tapez dans la console est interprété. Cela signifie que vos commandes sont immédiatement exécutées. Il est possible d’enchaîner les commandes les unes aux autres avec le caractère barre verticale (|) ou pipe (prononcer paype). Le résultat d’une commande est passé à la suivante, ce qui permet d’avoir une sortie que l’on maîtrise.

Par exemple, voici la sortie de mon ifconfig chez moi :

C’est un peu le bordel ! Mais vous pourriez facilement trier tout ça en “pipant” le résultat de ifconfig dans grepAussi, si je veux juste les lignes contenant en1 par exemple, il suffit de taper ifconfig grep en1, et vous aurez :

L’antislash permet de revenir à la ligne sans exécuter la commande, pour par exemple taper un petit script. Il y a beaucoup de possibles, et évidemment c’est un langage de programmation, cela requiert donc un apprentissage. Mais on trouve beaucoup de ressources sur internet pour vous y aider !

Ah dernière chose, n’oubliez pas de mettre régulièrement à jour vous-même votre sous-système avec la commande sudo apt-get update. Néanmoins, vous trouverez aussi certaines limitations par rapport à un équivalent 100% unix. Il s’agit en effet davantage d’un “developper toolset” (boîte d’outils pour les développeurs) que d’un système complet. On ne peut pas l’utiliser par exemple comme serveur.

L’autre grosse limitation, c’est qu’on ne peut pas lancer des scripts bash depuis le Power Shell, ou de scripts PowerShell ou une commande Windows depuis le bsh shell Ubuntu. Ce qui signifie qu’on ne peut pas utiliser ce nouveau shell pour automatiser des tâches sous Windows. Il faudrait pour cela un système plus complet. Allez, à vos claviers et amusez-vous bien !