39

В Linux мы можем использовать

sudo bash

запустить оболочку от имени суперпользователя.

На Windows 7 мы можем использовать

Меню « Пуск» -> (в поле поиска введите) cmd -> Щелкните правой кнопкой мыши результат поиска и выберите «Запуск от имени администратора».

запустить командную строку от имени администратора. Есть ли строка командной строки, которая похожа на Linux sudo или su чтобы запустить оболочку от имени администратора?

10 ответов10

34

Команда runas - это самая близкая вещь к тому, что вы ищете:

runas /user:username cmd.exe

Формат - runas , имя пользователя, под которым вы хотите запустить, другие параметры, а затем программа, которую вы хотите запустить.

Если вы находитесь в домене, вы можете использовать:

runas /user:DOMAIN\USERNAME cmd.exe

Это можно запустить из окна « Run ( Win+R ) или из окна командной строки.

Заметьте, однако, что это не совсем то же самое, что sudo - вы не можете использовать это, чтобы поднять себя, просто запустите что-то от имени другого пользователя. Если у вас уже есть административные права, руны к вашей учетной записи предоставят вам такой же доступ, что и обычная команда (если, конечно, вы не запускаете другую учетную запись администратора, которая предоставит права администратора новой оболочке).

11

Попробуйте создать ярлык для cmd.exe. Щелкните правой кнопкой мыши> Свойства. Нажмите на кнопку Дополнительно. Установите флажок "Запуск от имени администратора" и нажмите "ОК".

Назначьте ему сочетание клавиш, если хотите.

И вы также можете назначить местоположение по умолчанию для приглашения CMD, чтобы начать в .. например% CD%

8

Другой вариант - нажать Пуск и набрать cmd, а затем Ctrl + Shift + Enter.

Источник: Microsoft Technet

3

Используйте SuRun.

Работает и на Windows 8. Он запускает приложение в режиме "admin" без запроса, но у вас есть больший контроль над тем, какие приложения запускаются (вы можете увидеть это в апплете панели управления SuRun). Он отлично работает в пакетном файле тоже ...

1

Создайте пакетный файл, такой как sudo.bat, и введите следующие команды, а затем сохраните в переменной PATH:

@echo Set objShell = CreateObject("Shell.Application") > %temp%\sudo.tmp.vbs
@echo args = Right("%*", (Len("%*") - Len("%1"))) >> %temp%\sudo.tmp.vbs
@echo objShell.ShellExecute "%1", args, "", "runas" >> %temp%\sudo.tmp.vbs
@cscript %temp%\sudo.tmp.vbs

Чтобы использовать его, например, sudo cmd net start fms , скрипт не будет работать, если в командной строке есть кавычка.

1

Если вам нужно решение для командной строки: загрузите hstart с http://www.ntwind.com/software/hstart.html и извлеките hstart.exe или hstart64.exe куда-нибудь по вашему пути. Командную строку с повышенными привилегиями можно запустить с помощью команды hstart /runas cmd или hstart64 /runas cmd .

Но самый быстрый способ (как отмечено в комментарии к вопросу) по-прежнему состоит в том, чтобы нажать Windows, ввести cmd и нажать Ctrl + Shift + Enter.

1

Я был разочарован существующими решениями для этого, поэтому я написал небольшой скрипт Node.js, который должен быть более привычным для пользователей * nix.

Он поднимает текущего пользователя без подсказок пароля (только UAC), перенаправляет stdin и stdout и запускается в том же окне консоли.

https://github.com/tehsenaus/windosu

0

Вам может понравиться Sudo для Windows.

0

Я включаю подлинные команды su и sudo с моей оболочкой Hamilton C для запуска команды от имени другого пользователя или с повышенными правами (с помощью приглашения UAC) или с обоими, то есть с повышенными правами как другой пользователь. В отличие от runas и других альтернатив, мои su и sudo знают, как передавать текущие каталоги, переменные окружения и длинные командные строки. Это коммерческий продукт, но есть бесплатная версия. Полное раскрытие: я автор. Но я также с удовольствием отвечу на вопросы.

0

Расширение оболочки командной строки Open также может добавить эту возможность для вас.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .