Conseils pour exécuter des programmes Windows 10 dans une coque WSL Linux

Le sous-système Windows pour Linux relie la scission entre Windows et Linux en permettant aux gens d’exécuter des programmes Windows 10 directement dans une coquille Linux. Un des points forts du sous-système Windows pour Linux (WSL) est que les utilisateurs peuvent non seulement exécuter une distribution Linux dans Windows 10, mais vous avez également la flexibilité d’exécuter des programmes Windows 10 dans Linux.
Grâce à cette capacité, le Linux peut contrôler les fonctionnalités de Windows ou des programmes Windows pour travailler en collaboration avec le système de fichiers WSL ou leur sortie traitée par des commandes Linux. En outre, les utilisateurs WSL peuvent même créer des scripts shell complexes qui affectent la propagation de Linux et peuvent également être utilisés pour exécuter des commandes dans Windows 10.
Windows 10 et Linux utilisent une variable « IE » qui implique une liste de dossiers recherchés lorsque les gens exécutent un programme. Si vous essayez de lancer un programme et qu’il ne peut pas être détecté dans le PATH, Linux et Windows vous diront que le programme ne peut pas être trouvé. Dans ces situations, vous devez exécuter le programme en utilisant son chemin d’accès complet comme « C:Notepad2Notepad.exe. »
Lorsqu’une distribution WSL est lancée par Windows 10, elle configure la variable Linux PATH pour inclure les dossiers binaires Linux standard et votre chemin d’accès Windows 10 régulier. Ce chemin peut être consulté en tapant l’env | commande grep « PATH » à une invite d’obus WSL.
En plus d’exécuter des programmes pour agir avec des fichiers dans WSL, vous pouvez également traiter la sortie des programmes Windows 10 dans Linux. Lorsqu’un programme de console Windows est lancé, sa sortie est exposée directement sous Linux plutôt que sur Windows. Cette sortie peut ensuite être traitée à l’aide de programmes tels que sed, awk, tri, etc. À titre d’exemple simple, si nous voulions obtenir une liste des services Windows 10 triés par le nom du service, nous pourrions utiliser la commande suivante :
sc.exe query | grep SERVICE_NAME | awk ‘{print $1= » »; print $0}’ | sort -bf| sed ‘/^$/d’