中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » hosts文件中判断是否有指定字符,没有就加上给出提示
作者:
标题: hosts文件中判断是否有指定字符,没有就加上给出提示 上一主题 | 下一主题
chguishan
新手上路





积分 2
发帖 2
注册 2020-12-17
状态 离线
『楼 主』:  hosts文件中判断是否有指定字符,没有就加上给出提示

单位内网用了一个系统,但是要用域名才能访问,没有公网注册的域名,单位也没有DNS服务器,
想给内部每台想登录这个内网网站的电脑的hosts加上解析来通过域名登录这个内网网站。
网站IP172.16.5.1
网站域名aa.aaaa.com
下面的代码能达到要求,就是看着难看,帮我改一下,谢谢

判断hosts文件中是否有172.16.5.1 aa.aaaa.com
如果有就提示,如果没有加上再提示。(不能执行一次就写入一次)
最好是把提示改成直接打开网站。
谢谢


@echo off
(for /f "delims=" %%i in ('find /i "172.16.5.1 aa.aaaa.com"^<%windir%\system32\drivers\etc\hosts') do (
    echo 已经达到要求,请登录http://aa.aaaa.com
))||(echo=>>%windir%\system32\drivers\etc\hosts | echo 172.16.5.1 tdm.vcyz.com>>%windir%\system32\drivers\etc\hosts | echo 已经达到要求,请登录http://aa.aaaa.com)
pause

2020-12-19 11:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
chguishan
新手上路





积分 2
发帖 2
注册 2020-12-17
状态 离线
『第 2 楼』:  在批处理之家里已解决

@echo off
set ip=172.16.5.1
set domain=aa.aaa.com
set hosts="%windir%\system32\drivers\etc\hosts"
find /i "%ip% %domain%" %hosts%
if errorlevel 1 >>%hosts% (
  echo.
  echo %ip% %domain%
)
start "" "http://%domain%"

2020-12-20 21:08
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: