整理一个微软的一个工具:netsh,为什么要整理这东西,想必熟悉的人已经知道了,又有什么坏心思了?
netsh(Network Shell) 是一个windows系统本身提供的功能强大的网络配置命令行工具,使用该工具可以在运行 Windows的计算机上安装网络通信服务器组件之后配置和显示各种网络通信服务器角色和组件的状态,是不是觉得有点意思了?
说在前面的话
netsh其实是一个功能非常强大的网络配置命令行工具,以至于我感觉是无法一下就整理完毕的,应该可以根据其不同的上下文进行分别说明,亦或者就当前情况,用到哪些整理哪些。
netsh是什么
Netsh 是命令行脚本实用工具,可让用来显示或修改当前正在运行的计算机的网络配置。 可以通过在 netsh 提示符下键入命令来运行 Netsh 命令,并且可以在批处理文件或脚本中使用 Netsh 命令。 可以使用 netsh 命令来配置远程计算机和本地计算机。
还提供脚本功能,在批处理模式下对指定的计算机运行一组命令,使用 Netsh 将配置脚本保存在文本文件中,以便存档或者帮助配置其他计算机。
什么是netsh的上下文
Netsh 通过使用动态链接库来与其他操作系统组件交互的,所谓的上下文,其实可以理解为netsh可以提供哪些功能,以及其功能如何使用的,因为netsh是一个相对功能非常强大的工具,其上下文、子上下文相对也就比较多。
netsh提供的称为“上下文”的功能,即一组特定于网络服务器角色或功能的命令 。 这些上下文通过为一个或多个服务、实用工具或协议提供配置和监视支持来扩展 netsh 的功能。
获取上下文列表
打开命令提示符(cmd)或 Windows PowerShell 键入命令 netsh, 然后按 Enter。 键入 /?,然后按 Enter 或者直接输入netsh /? 然后按回车即可获取上下文列表:
用法: netsh [-a AliasFile] [-c Context] [-r RemoteMachine] [-u [DomainName\]UserName] [-p Password | *][Command | -f ScriptFile]
下列指令有效:
此上下文中的命令:
? - 显示命令列表。
add - 在项目列表上添加一个配置项目。
advfirewall - 更改到 `netsh advfirewall' 上下文。
branchcache - 更改到 `netsh branchcache' 上下文。
bridge - 更改到 `netsh bridge' 上下文。
delete - 在项目列表上删除一个配置项目。
dhcpclient - 更改到 `netsh dhcpclient' 上下文。
dnsclient - 更改到 `netsh dnsclient' 上下文。
dump - 显示一个配置脚本。
exec - 运行一个脚本文件。
firewall - 更改到 `netsh firewall' 上下文。
help - 显示命令列表。
http - 更改到 `netsh http' 上下文。
interface - 更改到 `netsh interface' 上下文。
ipsec - 更改到 `netsh ipsec' 上下文。
lan - 更改到 `netsh lan' 上下文。
mbn - 更改到 `netsh mbn' 上下文。
namespace - 更改到 `netsh namespace' 上下文。
netio - 更改到 `netsh netio' 上下文。
p2p - 更改到 `netsh p2p' 上下文。
ras - 更改到 `netsh ras' 上下文。
rpc - 更改到 `netsh rpc' 上下文。
set - 更新配置设置。
show - 显示信息。
trace - 更改到 `netsh trace' 上下文。
wcn - 更改到 `netsh wcn' 上下文。
wfp - 更改到 `netsh wfp' 上下文。
winhttp - 更改到 `netsh winhttp' 上下文。
winsock - 更改到 `netsh winsock' 上下文。
wlan - 更改到 `netsh wlan' 上下文。
下列的子上下文可用:
advfirewall branchcache bridge dhcpclient dnsclient firewall http interface ipsec lan mbn namespace netio p2p ras rpc trace wcn wfp winhttp winsock wlan
若需要命令的更多帮助信息,请键入命令,接着是空格,
后面跟 ?。
命令语法
netsh [-a AliasFile] [-c Context] [-r RemoteMachine] [-u [DomainName\]UserName] [-p Password | *][Command | -f ScriptFile]
-a 可选。 指定在运行 AliasFile 后,返回到 netsh 提示符 。
AliasFile 可选。 指定包含一个或多个 netsh 命令的文本文件的名称 。
-c 可选。 指定 netsh 输入指定的 netsh 上下文 。
Context 可选。 指定要输入的 netsh 上下文 。
-r 可选。 指定希望命令在远程计算机上运行。
RemoteComputer 可选。 指定要配置的远程计算机。
-u 可选。 指定要在用户帐户下运行 netsh 命令。
DomainName\ 可选。 指定用户帐户所在的域。 如果未指定 DomainName\ ,则默认值为本地域。
UserName 可选。 制定用户帐户名称。
-p 可选。 指定要为该用户帐户提供密码。
Password 可选。 指定使用 -uUserName 指定的用户帐户的密码。
NetshCommand 可选。 指定要运行的 netsh 命令 。
-f 可选。 运行用 ScriptFile 指定的脚本之后退出 netsh 。
ScriptFile 可选。 指定要运行的脚本。
注意事项
- 使用在另一台计算机上远程将某些 netsh 命令与 netsh –r 参数配合使用时,远程注册表服务必须在远程计算机上运行 。 如果未运行,Windows 将显示“找不到网络路径”错误消息。
- 如果指定 -r 后跟另一个命令, -r 在远程计算机上运行该命令,然后返回到Cmd.exe提示符。
- 使用 时 -r,仅为 -r 的当前实例设置目标计算机。 退出并重新输入 netsh 后,目标计算机将重置为本地计算机 。
- 如果字符串值在字符之间包含空格(例如,包含多个单词的字符串值),则需要将字符串值括在引号中。
评论区