web-dev-qa-db-fra.com

Ouvrir un dossier dans le gestionnaire de fichiers dans Win10 WSL en ligne de commande ubuntu?

Dans Ubuntu je fais habituellement

nautilus .

pour ouvrir le dossier actuel dans l'interface graphique.
Comment ferais-je cela dans Win10 WSL? Pouvez-vous même lancer des applications Windows à partir de la ligne de commande WSL?

4
Patoshi パトシ

Courir Nautilus

Vous pouvez exécuter nautilus à partir de WSL! Cela vous permettra de gérer le système de fichiers Linux.

Ce n'est pas tout à fait approprié pour cette SE, parce que c'est principalement une question liée à Windows, mais la voici.

Nautilus et de nombreuses autres applications Linux peuvent être exécutés sur WSL à condition que vous disposiez d'un serveur X11 basé sur Windows. X11 est le système de fenêtre sur lequel la plupart des systèmes Linux reposent, mais il peut également être installé sur Windows. X11 s'exécute en mode client-serveur qui dissocie le code du client appelant du serveur. Les appels sortants du WSL sont donc assez transparents.

Vous pouvez également utiliser un serveur X11 avec:

  • Sublime
  • Différents émulateurs de terminaux
  • Calculatrices
  • Probablement d'autres choses que je n'ai pas essayées.

Obtenir le serveur X11

Il existe quelques serveurs X11 basés sur Windows. Notez que le serveur fonctionne avec TCP et que, par défaut, il peut accepter les connexions de n’importe quelle adresse IP. Par conséquent, vous voudrez peut-être le restreindre dans votre pare-feu.

J'utilise celui-ci:

https://sourceforge.net/projects/vcxsrv/

Connecter le WSL à celui-ci

Il suffit de mettre ceci dans votre fichier .bashrc/.zshrc:

export DISPLAY=localhost:0.0

Courir nautlius

N'oubliez pas de Sudo apt update. Puis Sudo apt install nautilus. ensuite

nautilus .

Lancer Explorer.exe

Vous pouvez appeler n'importe quel exécutable Windows à partir du WSL, y compris Explorer.exe, le gestionnaire de fichiers Windows. Il vous suffit de taper son nom complet (y compris l'extension), et s'il s'agit d'un exécutable Win32, il démarrera.

Cependant, les applications Windows s'exécutent sous Windows, pas sous WSL. Ils ne verront pas le système de fichiers Linux, seulement le système Windows. S'il est vrai que le système de fichiers Linux est mappé sur des fichiers et des dossiers du système de fichiers Windows, ce mappage est plus ou moins un détail d'implémentation. Il n'est pas recommandé de modifier le système de fichiers Linux à partir de Windows.

Vous donnez des arguments Explorer.exe, mais notez que vous ne pouvez pas lui donner de chemins Linux car ce n'est pas une application Linux.

Il n'y a pas de commande pour mapper un chemin Linux sur le chemin Windows correspondant et le chemin est généralement assez moche. Par exemple, le chemin d'accès à ~/.zshrc pourrait être:

C:\Users\[WINDOWS USERNAME]\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home\[LINUX USERNAME]\.zshrc
5
GregRos

Citer la FAQ WSL ici:

(WSL) est avant tout un outil destiné aux développeurs - en particulier aux développeurs Web et à ceux qui travaillent sur ou avec des projets open source. Cela permet à ceux qui veulent/doivent utiliser Bash, les outils Linux courants (sed, awk, etc.) et de nombreux outils Linux (Ruby, Python, etc.) d'utiliser leur chaîne d'outils sous Windows.

WSL est un outil destiné à permettre aux utilisateurs qui en ont besoin d’exécuter les outils de ligne de commande Bash et Linux sous Windows.
WSL ne vise pas à prendre en charge les bureaux ou les applications graphiques (par exemple, Gnome, KDE, etc.).

Je doute sérieusement que Windows vous permette d'ouvrir n'importe quel programme graphique depuis WSL, , mais ce que vous voulez est une fonctionnalité de Windows Powershell =, voir cette introduction :

Nous pouvons appeler Explorer à partir de PowerShell à l'aide de la commande Explorer.

La commande pour ouvrir l'Explorateur dans le répertoire actuel est la suivante: Explorer .

3
dessert