Visual Studio Code Terminal, wie man einen Befehl mit Administratorrechten ausführt?


84

Die neue Version 1.2.0 enthält ein Terminal, aber wenn ich versuche, ein Paket mit Knoten zu installieren, erhalte ich die npm ERR! Code EPERM, das ich normalerweise mit der rechten Maustaste löse und als Administrator ausführe. Wie mache ich das im vscode-Terminal? Gibt es so etwas wie Sudo für Linux?

vscode terminal


4
Ich habe die Antwort selbst gefunden. Führen Sie einfach Visual Studio-Code als Administrator aus. Klicken Sie einfach mit der rechten Maustaste darauf. Ich weiß nicht, warum ich früher nicht daran gedacht habe.
Dragod83

Gibt es keine andere Problemumgehung? Ich habe Visual Studio jahrelang als Administrator ausgeführt, aber das scheint irgendwie "falsch" zu sein. Auch manchmal in VSCode muss ich das nicht tun. Nur wenn ein Paket gelöscht oder aktualisiert wird, erhalten Sie dies?
Simon_Weaver

`Führen Sie einfach Visual Studio-Code als Administrator aus. Klicken Sie einfach mit der rechten Maustaste darauf. ' Es funktioniert nur, wenn Sie alle Instanzen von VScode vor
JinSnow

Antworten:


115

Option 1 - Einfacher und beständiger

Das Ausführen von Visual Studio Code als Administrator sollte den Trick ausführen.

Wenn Sie unter Windows arbeiten, können Sie:

  1. Klicken Sie mit der rechten Maustaste auf die Verknüpfung oder App / Exe
  2. Gehen Sie zu Eigenschaften
  3. Kompatibilitäts-Tab
  4. Aktivieren Sie "Dieses Programm als Administrator ausführen".
Es gibt jedoch eine Einschränkung

Stellen Sie sicher, dass alle anderen Instanzen von VS Code geschlossen sind, und versuchen Sie dann, als Administrator ausgeführt zu werden. Das Elektronen-Framework blockiert Prozesse gerne beim Schließen. Überprüfen Sie daher am besten Ihren Task-Manager und beenden Sie die verbleibenden Prozesse.

Verwandte Änderungen in der Codebasis

Option 2 - Eher wie Sudo

Wenn Ihre Befehle aus irgendeinem Grund nicht als Administrator ausgeführt werden, können Sie den runasBefehl ausprobieren . Microsoft: Befehl runas

Beispiele
  • runas /user:Administrator myCommand
  • runas "/user:First Last" "my command"
Anmerkungen
  • Vergessen Sie nur nicht, alles, was ein Leerzeichen enthält, in doppelte Anführungszeichen zu setzen.
  • Es ist auch gut möglich, dass Sie das Kennwort für das Administratorkonto noch nie festgelegt haben, da Sie beim Ausführen des Befehls nach dem Kennwort gefragt werden. Sie können ein Konto jederzeit ohne den Benutzernamen Administrator verwenden, wenn es über Administratorzugriffsrechte / -berechtigungen verfügt.

1
Der Standardspeicherort für die ausführbare Datei istC:\Program Files\Microsoft VS Code\Code.exe
bbsimonbb

1
Wenn ich runas "user: domain \ adname" "npm install -g @ angle / cli" verwende, wird eine Fehlermeldung angezeigt. "RUNAS ERROR: Kann nicht ausgeführt werden - npm install -g @ angle / cli Das System kann die angegebene Datei nicht finden."
Tom McDonald

Wenn npm nicht gefunden werden kann, müssen Sie möglicherweise Ihre Knoteninstallation zur PATHSystemumgebungsvariablen hinzufügen . Sie können auch versuchen, zu überprüfen, ob es vorhanden ist, indem Sie etwas tun where.exe npmoder npm -vdie Version anzeigen. Auch wenn Sie Powershell verwenden, müssen Sie manchmal exe am Ende hinzufügen, damit Sie etwas haben wie: runas.exe /user:Administrator myCommand
CTS_AE

1
Mit Option 1 können
Clay

Wie in der Antwort erwähnt, stellen Sie möglicherweise fest, dass Sie Ihr Administratorkennwort nie festgelegt haben. Wenn dies der Fall ist, funktioniert es nicht, das Kennwort leer zu lassen (zumindest unter Windows 10). Möglicherweise stellen Sie jedoch auch fest, dass Ihr eigenes Benutzerkonto vorhanden ist Verwenden Sie stattdessen Ihren eigenen Benutzernamen Administratorund Sie erzielen das gleiche Ergebnis.
Tomáš Hübelbauer

3

Als Administrator zu laufen hat mir nicht geholfen. (habe auch Fehler mit syscall: umbenennen)

Es stellt sich heraus, dass dieser Fehler auch auftreten kann, wenn Dateien von Windows gesperrt werden.

Dies kann auftreten, wenn:

  • Sie führen das Projekt tatsächlich aus
  • Sie haben Dateien sowohl in Visual Studio als auch in VSCode geöffnet.

Wenn Sie als Administrator ausgeführt werden, kommt das Sperren von Windows-Dateien nicht um.

Ich habe in VS2017 ein neues Projekt erstellt und dann zu VSCode gewechselt, um zu versuchen, weitere Pakete hinzuzufügen. Nachdem das Projekt nicht mehr ausgeführt und VS2017 geschlossen werden konnte, konnte es ohne Fehler abgeschlossen werden

Haftungsausschluss: Ich bin mir nicht ganz sicher, ob dies bedeutet, dass es nicht erforderlich ist, als Administrator zu arbeiten. Versuchen Sie jedoch, dies nach Möglichkeit zu vermeiden, um die Möglichkeit zu vermeiden, dass ein betrügerisches Paket Dinge tut, für die es nicht bestimmt ist.


Danke, genau das ist mir passiert. Schließen Sie die anderen Anwendungen, die den Ordner verwenden, und installieren Sie sie anschließend über cmd in Admin neu.
Annie Lagang

3

Schritt 1: Starten Sie VS Code als Administrator neu

(Klicken Sie auf die Windows-Taste, suchen Sie nach "Visual Studio Code", klicken Sie mit der rechten Maustaste und Sie sehen die Administratoroption.)

Schritt 2: In Ihrem VS-Code-Powershell-Terminal ausführenSet-ExecutionPolicy Unrestricted


2

Folgendes bekomme ich.

Ich verwende Visual Studio Code und sein Terminal, um die 'npm'-Befehle auszuführen.

Visual Studio-Code (nicht als Administrator)
PS g: \ labs \ myproject> npm installiere bootstrap @ 3

Führt zu Scandir- und / oder Berechtigungsfehlern.

Visual Studio-Code (als Administrator)
Führen Sie diesen Befehl aus, nachdem ich so etwas wie 'ng serve' ausgeführt habe.

PS g: \ labs \ myproject> npm installiere bootstrap @ 3

Führt zu Scandir- und / oder Berechtigungsfehlern.

Visual Studio-Code (als Administrator - Schließen und Öffnen der IDE)
Wenn ich bereits andere Befehle ausgeführt habe, die sich auf Knotenmodule auswirken würden, habe ich beschlossen, zuerst Visual Studio-Code zu schließen, ihn als Administrator zu öffnen und dann den folgenden Befehl auszuführen:

PS g: \ labs \ myproject> npm installiere bootstrap @ 3

Das Ergebnis, das ich dann bekomme, ist: + bootstrap@3.3.7
hat 115 Pakete hinzugefügt und 1 Paket in 24.685s aktualisiert

Dies ist keine dauerhafte Lösung, da ich VS Code nicht jedes Mal schließen möchte, wenn ich einen npm-Befehl ausführen möchte, aber das Problem wurde bis zu einem gewissen Punkt behoben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.