Puncte:3

WSL2 - Comanda `code` a lui VSCode nu mai funcționează în terminalul Linux

drapel ng

Sunt foarte nou în Linux și WSL în general. Am putut să folosesc cod . pentru a deschide directorul meu curent în VSCode, dar după ce am șters ceva ce nu-mi amintesc, pur și simplu nu mai funcționează. Am dat comanda și doar se blochează acolo.

Mi-am șters instanța Ubuntu-20.04 și am recreat-o, dar tot nu va funcționa. De asemenea, mi-am verificat $PATH și pare să fie acolo.

De asemenea adăugați comanda shell în VSCode nu apare, așa că nu pot dezinstala și reinstala comanda rapidă shell.

Are cineva idee?

drewbie@drewbie:/$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/wsl/lib :/mnt/c/Windows/system32:/mnt/c/Windows:/mnt/c/Windows/System32/Wbem:/mnt/c/Windows/System32/WindowsPowerShell/v1.0/:/mnt/c/Windows /System32/OpenSSH/:/mnt/c/Program Files/NVIDIA Corporation/NVIDIA NvDLISR:/mnt/c/Program Files (x86)/NVIDIA Corporation/PhysX/Common:/mnt/c/Program Files/dotnet/:/ mnt/c/WINDOWS/system32:/mnt/c/WINDOWS:/mnt/c/WINDOWS/System32/Wbem:/mnt/c/WINDOWS/System32/WindowsPowerShell/v1.0/:/mnt/c/WINDOWS/System32 /OpenSSH/:/mnt/c/Program Files (x86)/QuickTime/QTSystem/:/mnt/c/Program Files/Git/cmd:/mnt/c/Program Files/Go/bin:/mnt/c/Program Fișiere/Docker/Docker/resources/bin:/mnt/c/ProgramData/DockerDesktop/version-bin:/mnt/c/Users/Andrew/AppData/Local/Microsoft/WindowsApps:/mnt/c/Users/Andrew/AppData /Local/Programe/Microsoft VS Code/bin:/mnt/c/Program Files/heroku/bin:/mnt/c/Users/Andrew/AppData/Local/GitHubDesktop/bin:/mnt/c/Users/Andrew/go /bin:/snap/bin

După introducerea codului. doar stă acolo

unde este și care

drewbie@drewbie:~$ unde este codul
cod: /mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/bin/code /mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/bin/code.cmd
drewbie@drewbie:~$ care cod
/mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/bin/code

După ce am făcut ceea ce a spus @NotTheDr01ds în firul de mai jos

drewbie@drewbie:~$ vi "$(care cod)"
drewbie@drewbie:~$ cod .
+ [ = adevărat ]
+ COMMIT=899d46d82c4c95423fb7e10e68eba52050e30ba3
+ APP_NAME=cod
+ CALITATE=stabil
+ NUME=Cod
+ DATAFOLDER=.vscode
+ realpath /mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/bin/code
+ dirname /mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/bin/code
+ dirname /mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/bin
+ VSCODE_PATH=/mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code
+ ELECTRON=/mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/Code.exe
+ IN_WSL=fals
+ [ -n Ubuntu-20.04 ]
+ IN_WSL=adevărat
+ [ adevărat = adevărat ]
+ export WSLENV=ELECTRON_RUN_AS_NODE/w:WT_SESSION::WT_PROFILE_ID
+ wslpath -m /mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/resources/app/out/cli.js
+ CLI=C:/Utilizatori/Andrew/AppData/Local/Programs/Microsoft VS Code/resources/app/out/cli.js
+ WSL_EXT_ID=ms-vscode-remote.remote-wsl
+ ELECTRON_RUN_AS_NODE=1 /mnt/c/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/Code.exe C:/Users/Andrew/AppData/Local/Programs/Microsoft VS Code/resources/app/out/cli .js --ms-enable-electron-run-as-node --locate-extension ms-vscode-remote.remote-wsl
NotTheDr01ds avatar
drapel vn
Puteți să dezinstalați și să reinstalați extensia *Remote - WSL* în VSCode? În cel mai rău caz, ce zici de dezinstalarea și reinstalarea VSCode în sine? De obicei nu recurg la „reinstalare” ca prim răspuns, dar având în vedere (a) nu ești sigur ce ai șters și (b) reinstalarea este destul de rapidă și nedureroasă, cred că merită încercat. primul.
drewkiimon avatar
drapel ng
@NotTheDr01ds Am dezinstalat și reinstalat extensia `Remote - WSL`, dar tot nu a remediat-o. Sunt puțin ezitant în dezinstalarea VSCode. Ca o ultimă salută Maria, poate. Dar încă nu.
NotTheDr01ds avatar
drapel vn
Destul de corect. `code` este de fapt un script shell, așa că puteți încerca să-l depanați pentru a vedea potențial unde este agățat. `vi $(care cod)` și adăugați `set -x` ca prima linie după shebang. Apoi încercați să rulați și adăugați rezultatul la întrebare. O pot compara cu a mea, cel puțin.
drewkiimon avatar
drapel ng
Am încercat să fac ceea ce ai făcut tu, fără niciun rezultat. :( Am reușit să-mi dau seama ce cod folosește și unde este. Nu sunt sigur dacă trebuie să fac vreo legătură simbolică? Văd asta uneori.
NotTheDr01ds avatar
drapel vn
Ah, scuze, probabil se datorează spațiilor din potecă. Asta e răul meu - ar trebui să știu să citez astfel de lucruri. Încercați cu ghilimele - `vi "$(care cod)"`?
drewkiimon avatar
drapel ng
@NotTheDr01ds L-am pus să funcționeze! O postez în întrebarea mea de mai sus. Vă mulțumesc mult pentru ajutorul acordat de până acum!
Puncte:3
drapel jp

Cred că această problemă mi-a fost cauzată de o actualizare a VSCode, care s-a produs automat.

Pentru a o rezolva:

  1. deschideți VSCode în Windows

  2. deschide Remote Explorer

    Remote Explorer

  3. faceți clic pe un folder dintr-o țintă WSL de interes: veți vedea că acest lucru provoacă o reinstalare

  4. acum puteți reveni la utilizarea cod $. comandă dintr-un folder din WSL2, la fel ca înainte

drewkiimon avatar
drapel ng
Dang. Aș verifica acest lucru, dar m-am decis să pornesc Linux pe o unitate separată. Dacă cineva poate valida acest lucru, voi face din el răspunsul!
mickmackusa avatar
drapel ve
@Ando în ciuda faptului că ești membru de peste 7 ani, încă nu ai făcut [turul]; Te rog sa faci.
Puncte:2
drapel ng

Am ajuns să-l fac să funcționeze până la urmă. Cred că următoarele au remediat.

  1. Accesați terminalul dvs. și ștergeți-vă settings.json fişier. Mai întâi doriți să salvați o copie de rezervă. Fișierul menționat a fost deschis din terminal

  2. Tu te duci la ctrl-a, ștergeți totul, apoi SALVAȚI FIȘIERUL.

  3. Un pas foarte important. Când reveniți la terminal, faceți clic pe SALVARE în colțul din dreapta jos. butonul Salvare faceți clic pe el!

  4. Acum, nu este distractiv, dar vom anula înregistrarea Ubuntu-20.04 din powershell.

    Notă: Acesta este un distructiv funcționarea și toate datele din sistemul de fișiere al instanței WSL se vor pierde. Din nou, înainte de acest pas, poate doriți să faceți mai întâi o copie de rezervă wsl --export Ubuntu-20.04 <backup-filename.tar> a fi in siguranta. Când ești gata, de pe powershell, scrie wsl --unregister Ubuntu-20.04 sau oricare ar fi Distro-ul tău.

  5. Reporniți computerul!!!

  6. Când computerul pornește din nou, veți reinstala distribuția și o veți seta ca implicită. wsl --install -d <Numele distribuției>

  7. Treceți prin setări, apoi tot ce am făcut a fost cod . și am obținut interacțiunea de mai jos. Acum funcționează pentru mine.

drewbie@drewbie:~$ cd ~
drewbie@drewbie:~$ ls
drewbie@drewbie:~$ ls -la
total 24
drwxr-xr-x 3 drewbie drewbie 4096 12 ian 18:12 .
drwxr-xr-x 3 root root 4096 12 ian 18:12 ..
-rw-r--r-- 1 drewbie drewbie 220 12 ian 18:12 .bash_logout
-rw-r--r-- 1 drewbie drewbie 3771 12 ian 18:12 .bashrc
drwxr-xr-x 2 drewbie drewbie 4096 12 ian 18:12 .peisaj
-rw-r--r-- 1 drewbie drewbie 0 12 ian 18:12 .motd_shown
-rw-r--r-- 1 drewbie drewbie 807 12 ian 18:12 .profil
drewbie@drewbie:~$ cod .
Instalarea VS Code Server pentru x64 (899d46d82c4c95423fb7e10e68eba52050e30ba3)
Descărcare: 100%
Despachetare: 100%
S-au despachetat 1722 de fișiere și foldere în /home/drewbie/.vscode-server/bin/899d46d82c4c95423fb7e10e68eba52050e30ba3.
NotTheDr01ds avatar
drapel vn
Excelent - Mă bucur să aud că l-ai funcționat! Un pic drastic oricum, cu eliminarea WSL/Ubuntu și eliminarea setărilor terminalului Windows, dar mă bucur că ați trecut de problemă. Voi face o ușoară modificare la răspunsul tău de dragul „siguranței”, dar nu prea mare.
drewkiimon avatar
drapel ng
@NotTheDr01ds vă mulțumesc pentru revizuire! E adevarat ca vor pierde totul din cauza lor :(

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.