批处理执行若干条命令后如何将运行结果输出至文本另,批处理如何查看工作组名称又如何查看备DNS呢

批处理执行若干条命令后如何将运行结果输出至文本另,批处理如何查看工作组名称又如何查看备DNS呢,第1张

call

:ip

"Physical

Address"

"phyaddr"

call

:ip

"Dhcp

Enabled"

"dhcp"

call

:ip

"DNS

Servers"

"dns"

echo

%dns%

%dhcp%

%phyaddr%

这是个多功能函数用法call

:ip

"提取的值名"

"要赋值的变量名"

:ip

for

/f

"tokens=2

delims=:"

%%i

in

('ipconfig

/all

^|findstr

/i

/c:%1')

do

set

"%~2=%%i"

goto

:eof

@echo off

::判断本地连接 赋值a

for /f "tokens=3,4 delims== " %%i in ('ipconfig ^|findstr /r "本"') do echo %%i %%j >DNStxt

for /f "tokens=1 delims==:" %%d in (DNStxt) do set a=%%d

::请根据实际情况更改下面三行

echo 开始更改主dns

netsh interface ip set dns name="%a%" source=static addr=21915032132

echo 完成

echo 开始更改副dns

netsh interface ip add dns "%a%" 210521492 index=2

del DNStxt

exit

这条批处理本人用过N多网吧,完全可以改

以上是完整修改主副DNS的批处理,你自己可以适当修改DNS

netsh 命令是不允许设置dns为127001的可以配置其他地址为为dns

例如:可以设置为1281,但就是不允许设置为1271

netsh interface ip add dns "%a%" 128001

您可以使用CMD中的 netsh 命令完成要求 *** 作:

::------以下为批处理文件内容----

@echo off

::set slection1=

set/p slection1=请输入IP地址:

netsh interface ip set address name="本地连接" source=static addr=%slection1% mask=2552552550

::set slection2=

set/p slection2=请输入网关地址:

netsh interface ip set address name="本地连接" gateway=%slection2% gwmetric=0

::set slection3=

set/p slection3=请输入主dns地址

netsh interface ip set dns name="本地连接" source=static addr=%slection3% register=PRIMARY

::set slection4=

set/p slection4=请输入备份dns地址

netsh interface ip add dns name="本地连接" addr=%slection4%

netsh interface ip set wins name="本地连接" source=static addr=none

pause

::-----批处理完成-----

以上批处理文件可以实现手工输入IP,网关以及DNS的要求, 其他方式请变通修改

祝您成功~~

@echo off

@Setlocal ENABLEDELAYEDEXPANSION

@set reg_path_id=

@set reg_path=

@set nic_id=

@set nic_name=

echo 获取本地网络连接名称

@for /f "usebackq tokens=7 delims=\" %%i in (`reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards"`) do (

set reg_path_id=%%i

set "reg_path=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\!reg_path_id!"

for /f "usebackq tokens=3" %%j in (`"reg query "!reg_path!" | find /i "ServiceName""`) do (

set NIC_id=%%j

for /f "usebackq skip=2 tokens=3" %%k in (`reg query "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters\Interfaces\!nic_id!" /v NTEContextList`) do (if not "%%k" == "\0" (Goto :nic_name))

))

Goto :EOF

:nic_name

@if exist %temp%\regtemp (del /q %temp%\regtemp >nul)

@reg export "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\%nic_id%\Connection" %temp%\regtemp >nul

for /f "usebackq tokens=2 delims==" %%l in (`find /i "Name" %temp%\regtemp`) do (

set nic_name=%%l

set nic_name=!nic_name:"=!

)

@if exist %temp%\regtemp (del /q %temp%\regtemp >nul)

echo 您的网卡连接名称为:%nic_name%

echo

echo 开始自动设置DNS地址

echo

echo 自动设置首选DNS地址(1721812960)

Netsh interface IP set dns "%nic_name%" source=static 1721812960 register=primary

echo 自动设置备用DNS地址(1721812960)

Netsh interface IP add dns "%nic_name%" 1721812960

echo

Echo 设置成功 按任一键后,就可以使用了……

Pause>nul

我没测试啊!自己看看测试下试试

以上就是关于批处理执行若干条命令后如何将运行结果输出至文本另,批处理如何查看工作组名称又如何查看备DNS呢全部的内容,包括:批处理执行若干条命令后如何将运行结果输出至文本另,批处理如何查看工作组名称又如何查看备DNS呢、批处理修改dns、请问谁知道如何通过批处理一键快速设置DNS为127.0.0.1 啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9558616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存