Terminal de código de Visual Studio, ¿cómo ejecutar un comando con derechos de administrador?

84

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

terminal vscode

Dragod83
fuente
4
Encontré la respuesta yo mismo, simplemente ejecute el código de Visual Studio como administrador. Simplemente haz clic derecho sobre él. No sé por qué no pensé en eso antes.
Dragod83
¿No hay otra solución para esto? He estado ejecutando Visual Studio durante años como administrador, pero esto parece 'incorrecto' de alguna manera. También a veces en VSCode no tengo que hacer esto. ¿Es solo cuando se elimina o actualiza un paquete que obtiene esto?
Simon_Weaver
`simplemente ejecute el código de Visual Studio como administrador. Simplemente haga clic derecho sobre él '. funciona solo si cierra todas las instancias de VScode antes
JinSnow

Respuestas:

115

Opción 1: más fácil y persistente

Ejecutar Visual Studio Code como administrador debería ser suficiente.

Si está en Windows, puede:

  1. Haga clic derecho en el acceso directo o la aplicación / exe
  2. Ir a propiedades
  3. Pestaña de compatibilidad
  4. Marque "Ejecutar este programa como administrador"
Sin embargo, hay una advertencia

Asegúrese de tener todas las demás instancias de VS Code cerradas y luego intente ejecutar como Administrador. Al marco electrónico le gusta detener los procesos cuando los cierra, 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 no está ejecutando sus comandos como administrador, puede probar el runascomando. Microsoft: comando runas

Ejemplos
  • runas /user:Administrator myCommand
  • runas "/user:First Last" "my command"
Notas
  • No olvide poner comillas dobles alrededor de todo lo que tenga un espacio.
  • También es muy posible que nunca haya configurado la contraseña en la cuenta de administrador, ya que le pedirá la contraseña cuando intente ejecutar el comando. Siempre puede usar una cuenta sin el nombre de usuario de Administrador si tiene derechos / permisos de acceso de administrador.
CTS_AE
fuente
1
La ubicación predeterminada para el ejecutable esC:\Program Files\Microsoft VS Code\Code.exe
bbsimonbb
1
cuando uso runas "user: domain \ adname" "npm install -g @ angular / cli" Me sale un error "RUNAS ERROR: No se puede ejecutar - npm install -g @ angular / cli el sistema no puede encontrar el archivo especificado"
Tom McDonald
Si no puede encontrar npm, es posible que deba agregar la instalación de su nodo a la PATHvariable de entorno del sistema. También puede intentar verificar si existe haciendo algo como where.exe npmo npm -vpara mostrar la versión. Además, si está usando powershell a veces, debe agregar exe al final para que tenga algo como: runas.exe /user:Administrator myCommand
CTS_AE
1
No podrá utilizar unidades asignadas en su proyecto o código con la Opción 1. stackoverflow.com/a/32715171/5060792
Clay
Como se menciona en la respuesta, es posible que nunca haya configurado su contraseña de administrador; si ese es el caso, dejar la contraseña en blanco no funcionará (al menos en Windows 10), pero también puede encontrar que su propia cuenta de usuario es también un administrador, así que use su propio nombre de usuario en lugar de Administratory obtendrá el mismo resultado.
Tomáš Hübelbauer
3

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

Resulta que este error también puede ocurrir si Windows bloquea los archivos.

Esto puede ocurrir si:

  • Realmente 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 la ejecución del proyecto y cerrar VS2017, se pudo completar sin errores

Descargo de responsabilidad: no estoy exactamente seguro de si esto significa que ejecutar como administrador no es necesario, pero trate de evitarlo si es posible para evitar la posibilidad de que algún paquete deshonesto haga cosas que no debería.

Simon_Weaver
fuente
Gracias, esto es exactamente lo que me pasó. Cerrar las otras aplicaciones que usan la carpeta y luego reinstalar a través de cmd en Admin.
Annie Lagang
3

Paso 1: reinicie VS Code como administrador

(haga clic en la tecla de Windows, busque "Visual Studio Code", haga clic con el botón derecho y verá la opción de administrador)

Paso 2: en su terminal de PowerShell de código VS, ejecuteSet-ExecutionPolicy Unrestricted

cham
fuente
2

Esto es lo que obtengo.

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

Visual Studio Code (no como administrador)
PS g: \ labs \ myproject> npm install bootstrap @ 3

Da como resultado errores de permiso y / o scandir.

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

Da como resultado errores de permiso y / o scandir.

Visual Studio Code (como administrador: cierre y apertura del IDE)
Si ya ejecuté otros comandos que afectarían los módulos de nodo, decidí intentar cerrar Visual Studio Code primero, abrirlo como administrador y luego ejecutar el comando:

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

El resultado que obtengo es: + [email protected]
agregué 115 paquetes y actualicé 1 paquete en 24.685s

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.

Jacques
fuente