Visual studio code terminal, ¿cómo ejecutar un comando con derechos de administrador?


La nueva versión 1.2.0 incluye un terminal, pero cuando intento instalar cualquier paquete con nodo obtengo el npm ERR! código EPERM que normalmente resuelvo haciendo clic derecho y ejecutándolo como administrador. Entonces, ¿cómo lo hago en el terminal vscode? ¿Hay algo como sudo para linux?

terminal vscode

Author: Dauren Akilbekov, 2016-06-08

3 answers

Opción 1-Más fácil y persistente

Ejecutar Código de Visual Studio como Administrador debería hacer el truco.

Si estás en Windows puedes:

  1. Haga clic derecho en el acceso directo o app/exe
  2. Ir a propiedades
  3. Pestaña de compatibilidad
  4. Marque "Ejecutar este programa como administrador"
Hay una advertencia a ello aunque

Asegúrese de tener todas las demás instancias de VS Code cerradas y luego intente ejecutar como Administrador. El electrón a framework le gusta detener los procesos al cerrarlos, por lo que es mejor verificar su administrador de tareas y eliminar los procesos restantes.

Cambios relacionados en la base de código

Opción 2-Más como Sudo

Si por alguna extraña razón esto es no ejecuta sus comandos como Administrador, puede probar el runas comando. Microsoft: comando runas

Ejemplos
  • runas /user:Administrator myCommand
  • runas "/user:First Last" "my command"
Nota
  • Simplemente no se olvide de poner comillas dobles alrededor de cualquier cosa que tenga un espacio en ella.
  • También es muy posible que nunca haya establecido la contraseña en la cuenta de Administrador, ya que le pedirá la contraseña cuando intente ejecutar el comando. Siempre puede utilizar una cuenta sin el nombre de usuario del Administrador si tiene derechos/permisos de acceso de administrador.
 35
Author: CTS_AE,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-16 02:05:06

Correr como administrador no me ayudó. (también tiene errores con syscall: rename)

Resulta que este error también puede ocurrir si los archivos están bloqueados por Windows.

Esto puede ocurrir si :

  • En realidad estás ejecutando el proyecto
  • Tiene archivos abiertos tanto en Visual Studio como en VSCode.

Ejecutar como administrador no evita el bloqueo de archivos de Windows.

Creé un nuevo proyecto en VS2017 y luego cambié a VSCode para intentar agregar más paquetes. Después de detener el proyecto de ejecución y cierre VS2017 fue capaz de completar sin error

Descargo de responsabilidad: No estoy exactamente seguro de si esto significa que no es necesario ejecutar como administrador, pero intente evitarlo si es posible para evitar la posibilidad de que algún paquete falso haga cosas que no está destinado a hacer.

 1
Author: Simon_Weaver,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-01 19:37:44

Esto es lo que obtengo.

Estoy usando Visual Studio Code y su Terminal para ejecutar los comandos 'npm'.

Código de Visual Studio (no como administrador)
PS g:\labs\myproject> npm install bootstrap@3

Resulta en scandir y/o errores de permisos.

Visual Studio Code (como Administrador)
Ejecute este comando después de haber ejecutado algo como 'ng serve'

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

Resultados en scandir y / o errores de permisos.

Código de Visual Studio (como Administrador - cierre y apertura del IDE)
Si ya he ejecutado otros comandos que afectarían a los módulos de nodo, decidí intentar cerrar Visual Studio Code primero, abriéndolo como Administrador y luego ejecutando el comando:

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

El resultado que obtengo es: + [email protected]
se agregaron 115 paquetes y se actualizó 1 paquete en 24.685 s

Esta no es una solución permanente ya que no quiero continuar cerrando VS Code cada vez que quiero ejecutar un comando npm, pero resolvió el problema hasta cierto punto.

 1
Author: Jacques,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-12 14:16:22