当前位置: 首页 > news >正文

Windows环境下,使用bat脚本配置本地域名解析(含新增、修改、清理)

适用场景:
1.内部不存在DNS服务器的客户;
2.客户电脑不知道前期是否过某域名的本地解析。

整体思路:
1.备份原始hosts配置文件;
2.将hosts配置文件中包含xxxxxxxxxx.com域名的解析清空;
3.写入正确的解析到hosts配置文件。

保存及运行:
保存时编码格式需设置为:ANSI
在这里插入图片描述
运行时,需要适用右键-以管理员身份运行

@echo off
setlocal enabledelayedexpansion
chcp 65001set "DATE=%date:~3,4%%date:~8,2%%date:~11,2%"
set "HOUR=%time:~0,2%"
rem 处理1~9点时间显示一位问题
if "%time:~0,1%"==" " set HOUR=0%time:~1,1%
set "MINUTE=%time:~3,2%"
set "SECOND=%time:~6,2%"
set "DATE_TIME=%DATE%%HOUR%%MINUTE%%SECOND%"xcopy C:\Windows\system32\drivers\etc\hosts C:\Windows\system32\drivers\etc\hosts-%DATE_TIME%.bak\ /d /c /i /y
:: 备份hhosts文件set "input_file=C:\Windows\System32\drivers\etc\hosts"
set "output_file=C:\Windows\System32\drivers\etc\temp.txt"if exist "%output_file%" del "%output_file%"
:: 如果已存在temp.txt则删除:: 核心代码,判断是否包含域名,包含则将该行清空
for /f "tokens=* delims=" %%a in ('type "%input_file%"') do (set "line=%%a"echo !line! | findstr /i "xxxxxxxxxx.com">nul &&(set "line=")echo(!line!>>"%output_file%"
)
:: 核心代码,判断是否包含域名,包含则将该行清空move /y "%output_file%" "%input_file%"
:: 用temp.txt替换原hosts文件
if exist "%output_file%" del "%output_file%"
:: 清理创建的临时文件
endlocal
:: 释放变量:: 重新写入本地域名解析
echo 211.139.xx.xxx oazt.xxxxxxxxxx.com oa.xxxxxxxxxx.com >> C:\Windows\System32\drivers\etc\hosts
:: 刷新DNS缓存
ipconfig /flushdns
exit

http://www.mrgr.cn/news/10207.html

相关文章:

  • 飞速(FS)400G SR4光模块概述
  • day5JS-String常用方法和Math常用方法
  • FTP服务器(服务名vsftpd,端口tcp/20和tcp/21)
  • 网络安全概述
  • Python爬虫框架Scrapy应用实战解析
  • C++11特性-智能指针
  • K8S集群中驱逐节点
  • C 06 编译4阶段
  • TCP/IP和SNMP
  • 图了个图 - 目前最满意的AI修图软件
  • Windows环境如何安装maven并配置IDEA
  • C++系列-继承方式
  • HDMI接口驱动设计验证
  • vue2项目中滚动的自动和停止
  • MonkeyRunner在自动化测试里的应用场景
  • 百度文本内容审核
  • keepalived的技术原理及其在负载均衡场景中的应用
  • RockPI 4A单板Linux 4.4内核下的RK3399 GPIO功能解析
  • PCL-基于RANSAC的平面拟合方法
  • Windows—UDP编程