В новую версию 1.2.0 включен терминал, но когда я пытаюсь установить любой пакет с node, я получаю npm ERR! код EPERM, который я обычно решаю, щелкнув правой кнопкой мыши и запустив его как администратор. Итак, как я это делаю в терминале vscode? Есть что-то вроде sudo для linux?
Visual Studio код терминала, как запустить команду с правами администратора?
Ответ 1
Вариант 1 - Легче и Постоянно
Запуск кода Visual Studio в качестве администратора должен сделать трюк.
Если вы находитесь в Windows, вы можете:
- Щелкните правой кнопкой мыши ярлык или приложение /exe
- Перейти к свойствам
- вкладка "Совместимость"
- Отметьте "Запустить эту программу как администратор"
Убедитесь, что все остальные экземпляры кода VS закрыты, а затем попытайтесь запустить его как Administrator. Электронной структуре нравится останавливать процессы при их закрытии, поэтому лучше проверить диспетчер задач и убить оставшиеся процессы.
Связанные изменения в Codebase- https://visualstudio.uservoice.com/forums/293070-visual-studio-code/suggestions/8915236-visual-code-w-terminal-integrated-and-super-admin
- https://github.com/Microsoft/vscode/issues/7407
Вариант 2 - больше похож на Sudo
Если по какой-то странной причине это не выполняет ваши команды в качестве администратора, вы можете попробовать команду runas
. Microsoft: команда runas
-
runas /user:Administrator myCommand
-
runas "/user:First Last" "my command"
- Только не забудьте поставить двойные кавычки вокруг всего, что имеет место в нем.
- Также вполне возможно, что вы никогда не устанавливали пароль в учетной записи администратора, так как он будет запрашивать пароль при попытке выполнить команду. Вы всегда можете использовать учетную запись без имени пользователя Administrator, если у нее есть права доступа/разрешения администратора.
Ответ 2
Запуск, так как администратор мне не помог. (также получили ошибки с помощью syscall: rename)
Оказывается, эта ошибка также может возникать, если файлы заблокированы Windows.
Это может произойти, если:
- Фактически вы выполняете проект
- У вас есть файлы, открытые как в Visual Studio, так и в VSCode.
Запуск, поскольку администратор не оборачивается блокировкой файлов Windows.
Я создал новый проект в VS2017, а затем переключился на VSCode, чтобы попытаться добавить больше пакетов. После остановки проекта от запуска и закрытия VS2017 он смог выполнить без ошибок
Отказ от ответственности: я не совсем уверен, что это означает, что он работает, поскольку администратор не нужен, но старайтесь избегать его, если это возможно, чтобы избежать возможности использования какого-либо пакета изгоев, который он не предназначен.
Ответ 3
Вот что я получаю.
Я использую код Visual Studio и его терминал для выполнения команд 'npm'.
Код Visual Studio (не администратор)
PS g:\labs\myproject> npm установить начальную загрузку @3
Приводит к ошибкам scandir и/или разрешению.
Код Visual Studio (от имени администратора)
Запустите эту команду после того, как я запустил что-то вроде 'ng serve'
PS g:\labs\myproject> npm установить начальную загрузку @3
Приводит к ошибкам scandir и/или разрешению.
Visual Studio Code (от имени администратора - закрытие и открытие IDE)
Если я уже выполнил другие команды, которые могли бы повлиять на модули узлов, я решил сначала закрыть код Visual Studio, открыть его как Администратор, а затем выполнить команду:
PS g:\labs\myproject> npm установить начальную загрузку @3
Я получаю результат: + [email protected]
добавил 115 пакетов и обновил 1 пакет за 24,685 с
Это не постоянное решение, так как я не хочу продолжать закрывать VS Code каждый раз, когда хочу выполнить команду npm, но это действительно решило проблему.