Comment exécuter des commandes Linux depuis l’extérieur du shell Bash sur Windows 10

Windows 10 inclut un «sous-système Windows pour Linux» sous-jacent pour exécuter des applications Linux, mais il n’est accessible que via le shell Bash. Cependant, il existe un moyen d’exécuter des applications Linux sans lancer au préalable une fenêtre Bash.

Ceci est possible grâce au bash -c commander. Utilisez-le pour exécuter des commandes Linux via l’invite de commande et PowerShell, ou même créer un raccourci sur le bureau qui exécute une commande ou un programme Linux lors de son lancement.

Mettre à jour: Si vous avez plusieurs environnements Linux installés, vous pouvez utiliser la commande wslconfig pour choisir l’environnement Linux par défaut. Il existe également un moyen d’exécuter des commandes dans des environnements Linux spécifiques.

Comment exécuter des commandes Linux dans l’invite de commandes ou PowerShell

Bientôt: Comment installer et utiliser Linux Bash Shell sur Windows 10

Avant de faire quoi que ce soit, vous devrez installer et configurer le shell Bash de Windows 10. Après cela, vous pouvez ouvrir une fenêtre d’invite de commandes et exécuter la commande suivante pour exécuter le logiciel Linux en dehors d’une fenêtre Bash:

bash -c "command"

Par exemple, disons que vous vouliez installer le paquet emacs via apt-get. Vous exécuteriez la commande suivante dans une fenêtre d’invite de commandes:

bash -c "sudo apt-get install emacs"

Lorsque vous utilisez bash -c, Windows lance un shell Bash en arrière-plan et lui passe la commande. La commande s’exécutera jusqu’à ce qu’elle soit terminée, puis se fermera, avec le shell Bash. Toute sortie de terminal exécutée par la commande en cours apparaîtra directement dans la fenêtre d’invite de commandes, plutôt que dans une fenêtre shell Bash séparée.

Cette astuce vous permet également d’exécuter des commandes Linux dans PowerShell, tout comme vous exécuteriez un exécutable Windows normal. Vous pouvez le faire en exécutant directement le fichier .exe comme vous le feriez dans une fenêtre d’invite de commandes, ou via toute autre méthode pour exécuter des exécutables dans PowerShell.

bash -c "uname -a"

Comme pour une fenêtre d’invite de commandes, la sortie de la commande apparaîtra directement dans PowerShell. Ces méthodes peuvent également être utilisées pour ajouter des commandes Linux à un fichier de commandes ou à un script PowerShell.

Comment exécuter des commandes Linux à partir de la boîte de dialogue Exécuter ou du menu Démarrer

Cette astuce fonctionne également pour exécuter des commandes à partir de la boîte de dialogue Exécuter, du menu Démarrer ou de tout lanceur d’applications tiers.

En relation :  Comment effacer votre historique de navigation dans Google Chrome

Par exemple, pour lancer vi à partir de la boîte de dialogue Exécuter, appuyez sur Windows + R sur votre clavier, puis exécutez la commande suivante:

bach -c "vi"

L’éditeur de texte vi apparaîtra dans sa propre fenêtre.

Cela fonctionne également pour le menu Démarrer, vous pouvez donc taper la même commande directement dans le menu Démarrer et appuyer sur Entrée pour l’exécuter en tant que commande.

Comment exécuter des commandes Linux avec un raccourci sur le bureau

le bash -c La commande permet également de lancer des applications Linux via un raccourci sur le bureau. Par exemple, disons que vous vouliez lancer l’éditeur de texte vi via un raccourci sur le bureau. Cliquez avec le bouton droit sur le bureau, pointez sur Nouveau> Nouveau raccourci et entrez la cible suivante:

bash -c "vi"

Vous pouvez maintenant enregistrer le raccourci et il lancera vi lorsque vous double-cliquez dessus.

Bientôt: Comment exécuter des applications de bureau Linux graphiques à partir du shell Bash de Windows 10

Fait intéressant, cette astuce fonctionne également pour lancer des applications graphiques Linux à partir d’un raccourci sur le bureau. Installez un serveur X et configurez des applications de bureau graphiques Linux. Vous devriez pouvoir créer des raccourcis pour les lancer directement.

Cependant, vous devrez les lancer comme ceci:

bash -c "DISPLAY=:0 command"

Bien que vous puissiez lancer des commandes Bash ailleurs dans Windows, il n’y a aucun moyen d’exécuter des logiciels ou des exécutables Windows directement à partir d’une fenêtre shell Bash.

Moyens Staff
Moyens I/O Staff vous a motivé, donner des conseils sur la technologie, le développement personnel, le style de vie et des stratégies qui vous aider.