这个问题已经在这里有了答案:
- Windows是否有任何“ sudo”命令? 15个答案
在Linux上,我们可以使用
sudo bash
以超级用户身份运行Shell。
在Windows 7上,我们可以使用
开始菜单->(在搜索框中,键入)cmd->右键单击搜索结果,然后选择以管理员身份运行
以管理员身份运行命令提示符。有也一个命令提示行就是喜欢linux的sudo
或su
以启动一个shell作为管理员?
这个问题已经在这里有了答案:
在Linux上,我们可以使用
sudo bash
以超级用户身份运行Shell。
在Windows 7上,我们可以使用
开始菜单->(在搜索框中,键入)cmd->右键单击搜索结果,然后选择以管理员身份运行
以管理员身份运行命令提示符。有也一个命令提示行就是喜欢linux的sudo
或su
以启动一个shell作为管理员?
Answers:
该runas
命令与您要查找的内容最接近:
runas /user:username cmd.exe
格式为runas
,您要运行的用户名,其他选项,然后是要运行的程序。
如果您在域中,则可以使用:
runas /user:DOMAIN\USERNAME cmd.exe
这可以从Run
框(Win+ R)或命令窗口中运行。
但是请注意,这并不完全一样sudo
-您不能使用它来提升自己,只能以其他用户身份运行某些内容。如果您已经具有管理权限,则您的帐户运行方式将为您提供与常规命令相同的访问权限(当然,除非您以其他管理员帐户运行,否则将向新外壳授予那些管理员的权限)。
sudo
,runas
它将永远不会缓存密码任何时间。因此,如果您打算排队几个快速命令,例如可以连续运行sudo
。因此,只需打开控制台窗口并在其中运行命令。
/savecred
。
runas /user:administrator cmd.exe
十几种类型的本地管理员来说,不难记住。就是命令本身,runas
后面是/user:
开关,然后是我们要以其身份运行的用户,最后是我们要运行的程序cmd.exe
(在本例中为命令提示符)。这几乎是运行提升的命令提示符所能获得的一行。另外,如果您执行start-> run有时会出现一个复选框来运行提升的程序,但我没有做出任何努力来弄清楚它的外观,但这是一个选择。
另一种选择是单击Start并键入cmd,然后是Ctrl+ Shift+Enter
资料来源:Microsoft Technet
创建一个批处理文件(例如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
则如果命令行中有引号,该脚本将无法工作。
如果需要命令行解决方案:从http://www.ntwind.com/software/hstart.html下载hstart,然后将hstart.exe或hstart64.exe解压缩到路径中的某个位置。您可以使用hstart /runas cmd
或来启动提升权限的命令提示符hstart64 /runas cmd
。
但是最快的方法(如对该问题的评论中所述)仍然是按Windows,键入cmd
并按Ctrl+ Shift+ Enter。
我对现有的解决方案感到沮丧,因此我编写了一个Node.js脚本,* nix用户应该更熟悉。
它将在没有密码提示的情况下提升当前用户(只是UAC),重定向stdin和stdout,并在同一控制台窗口中运行。
sudo <command>
并在UAC对话框中按Alt + Y。
在打开命令提示符外壳扩展,可以为您添加此功能为好。
我在Hamilton C Shell中包含正版su
和sudo
命令,以便以其他用户身份或提升身份(使用UAC提示符)或同时以这两者(即,以另一用户身份提升)来运行命令。与和其他替代方法不同,我和我知道如何传递当前目录,环境变量和长命令行。这是一种商业产品,但是有免费版本。完全公开:我是作者。但我也很乐意回答问题。runas
su
sudo
您可能会喜欢Windows的Sudo。