首发于 乐吐槽
几个简单好用的bat批处理,总有你需要的

几个简单好用的bat批处理,总有你需要的


什么?你还不知道怎么查看自己电脑的IP地址?不知道怎么一键修改IP?不知道为什么QQ、微信能用网页却不能正常打开?

那就往下看吧,总有你需要的。


批处理的使用方法: 复制批处理命令,粘贴到新建的记事本文档内,选择另存为,保存类型选择 所有文件 ,文件名随意命名但结尾后缀必须是 .bat ,不区分大小写。如果里面有汉字,显示有乱码的情况,需要在另存的同时将“编码”选择为 ANSI 保存即可。有些运行时涉及更大权限,需要右击选择 以管理员身份运行


快速查看本机IP地址和电脑名

@echo off
echo 本机IP
ipconfig|find "IPv4"
echo.
echo 电脑名
hostname
pause>nul
exit


获取局域网内本机IP:

@echo off
for /f "tokens=4" %%a in ('route print^|findstr 0.0.0.0.*0.0.0.0') do (
 set IP=%%a
echo 你的局域网IP是:
echo %IP%
pause>nul


重启网卡的批处理命令:

改编自BAT批处理判断IP地址并自动禁用启用网卡: jb51.net/article/50881.


@ECHO OFF
ECHO Fix DHCP Configuration:
ECHO The network card is restarting
ECHO Please wait... 
ipconfig /release>NUL 1>NUL 2>NUL
ipconfig /renew>NUL 1>NUL 2>NUL
ECHO All Done. The network card has restarted !
ECHO Please enjoy it.
PAUSE

清除DNS缓存并重新注册DNS的批处理命令:

用于解决DNS解析异常,导致一台电脑内全部或个别不能上网的异常。有时候QQ、微信能用却打不开网页,也有这方面的原因。

ipconfig的常用命令参考,依此可以配置最简单的批处理:

ipconfig /all:显示本机TCP/IP配置的详细信息;
ipconfig /release:DHCP客户端手工释放IP地址;
ipconfig /renew:DHCP客户端手工向服务器刷新请求;
ipconfig /flushdns:清除本地DNS缓存内容;
ipconfig /displaydns:显示本地DNS内容;
ipconfig /registerdns:DNS客户端手工向服务器进行注册;


之前公司的文件服务器域名映射、部分DNS服务器解析有些问题,需要重新获取,方便他人,就编写了这个bat。里面增加了一个ping 域名的命令,域名可以更换成要测试的其它域名,以测试是否能正常解析。
@echo off
ipconfig /flushdns
ipconfig /registerdns
ping www.baidu.com
pause

获取本机用户及当前用户的批处理命令

@echo off
echo 本机上拥有以下用户名:
echo.
for /f "skip=4 tokens=1-3" %%i in ('net user') do (
    if not "%%i"=="命令成功完成。" echo %%i
    if not "%%j"=="" echo %%j
    if not "%%k"=="" echo %%k
echo.
echo 当前登录本机的账户是:%username%
pause>nul


简单查看电脑IP地址的批处理命令:

@echo off
ipconfig /all
pause




电脑快速切换/修改IP地址

小技巧:运行WIN+R,输入命令ncpa.cpl可迅速打开“网络连接”面板,方便查看任意网卡。

有这样的场景,我需要用自己电脑测试,分别是DHCP获取IP和手动固定IP,来回手动配置很麻烦,又经常要这么切换,这就需要做两个BAT批处理文件了,用时直接【以管理员身份】运行点击切换。

PS:文中的网卡名【本地连接】只是举例,实际需要根据ncpa.cpl命令查到看要使用的是哪个网卡来更换。

  • DHCP自动获取IP,可新建记事本复制粘贴后另存为IP-DHCP.BAT:
    netsh interface IP set address "本地连接" source=dhcp
    netsh interface IP set dns "本地连接" source=dhcp
    pause
  • 固定IP,IP、网关和DNS根据实际填写,可新建记事本复制粘贴后另存为IP-SET.BAT:
netsh interface IP set address "本地连接" static 10.0.0.123 255.255.255.0 gateway=10.0.0.1
netsh interface IP set dns "本地连接" static addr=225.5.5.5
netsh interface IP add dns "本地连接" addr=114.114.114.114
pause


自动设置计算机多IP地址的批处理(转载)

一台电脑多网卡或频繁切换IP的,使用多个批处理也挺不方便,可以整合在一个批处理文件中,直接选用。
以下可以根据实际情况增删修改网卡数量、配置等,实现一键切换IP。

说明: 请根据实际情况修改网卡名称、IP等信息,个别场景中网关也可以删除不配置。文中的无线网卡名称为WLAN,本地连接的名称还是本地连接。

@echo.
@echo     ※※※※※※※※※※※※※※※※※※※※※※※※※※※※
@echo     ※                                                    ※
@echo     ※    本命令用于自动设置无线网络和本地连接的IP地址    ※
@echo     ※                                                    ※
@echo     ※                                                    ※
@echo     ※ 1 - 设置无线网络地址为192.168.2.188,用于公司上网  ※
@echo     ※                                                    ※
@echo     ※ 2 - 设置无线网络地址为自动获取,用于外部上网       ※
@echo     ※                                                    ※
@echo     ※ 3 - 设置本地连接地址为192.168.2.220,用于网线连接  ※
@echo     ※                                                    ※
@echo     ※ 4 - 设置本地连接地址为自动获取,用于外部上网       ※
@echo     ※                                                    ※
@echo     ※※※※※※※※※※※※※※※※※※※※※※※※※※※※
@echo.
@echo.
@echo.
@echo     ******请选择设置方式[1,2,3,4],并按回车确定执行******
@echo.
@echo.
@echo.
@echo.
@ SET /P ST="方式选择: "
echo.
if /I "%ST%"=="1" goto setip1
if /I "%ST%"=="2" goto setip1no
if /I "%ST%"=="3" goto setip2
if /I "%ST%"=="4" goto setip2no
:setip1
@echo.
@echo         ---------------------------------------------
@echo         本命令将自动为“WLAN”填写以下内容:
@echo                  IP地址:  192.168.2.188
@echo                  子网掩码:255.255.255.0
@echo                  网关:    192.168.2.1
@echo.
@echo                  首选DNS:  223.5.5.5
@echo                  备用DNS:  114.114.114.114
@echo         ---------------------------------------------
@echo.
@echo.
@echo.
@echo.
@echo.
@ pause
@echo 设置IP地址...
@echo off
netsh interface ip set address name="WLAN" source=static addr=192.168.2.188 mask=255.255.255.0 gateway=192.168.2.1 1
@echo 设置首先DNS...
@echo off
netsh interface ip set dns name="WLAN" source=static addr=223.5.5.5
@echo 设置备用DNS...
@echo off
netsh interface ip add dns "WLAN" 114.114.114.114 index=2
@echo 设置完成。
@ pause
:setip1no
@echo.
@echo         ----------------------------------------
@echo         本命令将自动为“WLAN”填写以下内容:
@echo.
@echo                      自动获取IP地址
@echo                  自动获取DNS服务器地址
@echo         -----------------------------------------
@echo.
@echo.
@echo.
@echo.
@ pause
@echo.
@echo off
@echo 设置自动获取IP地址...
netsh interface ip set address name="WLAN" source=dhcp
@echo 设置自动获取DNS服务器地址...
netsh interface ip set dns name="WLAN" source=dhcp
@echo.
@echo 设置完成。
@ pause
:setip2
@echo.
@echo         ---------------------------------------------
@echo            本命令将自动为“本地连接”填写以下内容:
@echo                  IP地址:  192.168.2.220
@echo                  子网掩码:255.255.255.0
@echo                  网关:    192.168.2.1
@echo.
@echo                  自动获取DNS服务器地址
@echo         ---------------------------------------------
@echo.
@echo.
@echo.
@echo.
@echo.
@ pause
@echo.
@echo off
@echo 设置IP地址...
netsh interface ip set address name="本地连接" source=static addr=192.168.2.220 mask=255.255.255.0 gateway=192.168.2.1 1
@echo 设置自动获取DNS服务器地址...
netsh interface ip set dns name="本地连接" source=dhcp
@echo 设置完成
@echo.
@ pause
:setip2no
@echo.
@echo         ----------------------------------------
@echo         本命令将自动为“本地连接”填写以下内容:
@echo.
@echo                      自动获取IP地址
@echo                  自动获取DNS服务器地址
@echo         -----------------------------------------
@echo.
@echo.
@echo.
@echo.
@ pause
@echo.
@echo off
@echo 设置自动获取IP地址...
netsh interface ip set address name="本地连接" source=dhcp