在 Windows 11 Insider Preview Build 26052 中,Microsoft 为 Windows 添加了 sudo 命令,它可以让用户像在 Linux 中那样使用 sudo。如果你想在 26052 以下的版本中使用 sudo,你可以查看上篇博客
启用
设置
打开开发者选项
启用 sudo,并选择是
选择一种模式,不同模式的区别可以在下方查看
CLI
以管理员身份运行命令提示符
使用sudo config --enable <configuration_option>
命令启用 sudo,其中<configuration_option>
可填forceNewWindow
/disableInput
/normal
,分别对应“在新窗口中”、“禁用输入”、“内联”,具体区别可在下方查看
三种模式的区别
在新窗口中(forceNewWindow)
在新窗口中是 sudo 的默认配置,在使用 sudo 时会开启一个新的窗口
禁用输入(disableInput)
禁用输入会在当前窗口中执行命令,但输入句柄已关闭,这意味着程序无法获取输入
图中是一个简单的 Python 脚本,它会将输入的内容原样输出
在内联模式下执行它,可以正常输出我输入的内容
但在禁用输入模式下,它会报 EOFError
内联(normal)
内联是最接近其它操作系统上的一种模式,它会在当前窗口中执行命令,并且能正常接受输入
命令
run
语法:sudo run [OPTIONS] [COMMANDLINE]...
用途:以管理员身份运行命令
示例:sudo run python test.py
(以管理员身份执行 python test.py 命令)
config
语法:sudo config [OPTIONS]
用途:获取或配置 sudo 的配置信息
示例:sudo config
(获取配置信息)、sudo config --enable disable
(禁用 sudo)
help
语法:sudo help
用途:查看帮助
示例:sudo help
(查看帮助)
参数
-E, –copyEnv
没研究明白 :(,Pass the current environment variables to the command
–newWindow
让命令在新窗口中执行
–disableInput
禁用输入
-h, –help
查看帮助
-V, –version
查看版本
Microsoft Learn:Sudo for Windows | Microsoft Learn
Microsoft DevBlogs:Introducing Sudo for Windows! – Windows Command Line
YouTube:Sudo On Windows! …and other tricks
Windows Insider Blog:Announcing Windows 11 Insider Preview Build 26052 (Canary and Dev Channels) | Windows Insider Blog