可以任何一个,帮助我检测任何没有#的陈述,即。主机文件(/ system32 / drivers / etc / hosts)中使用Windows批处理命令的非注释语句?
例如:该文件中指定的IP地址不具有#
答案 0 :(得分:3)
这对我有用:
findstr "^[^#]*[0-9a-f][.:][0-9a-f]" c:\windows\system32\drivers\etc\hosts
答案 1 :(得分:1)
这将找到未评论的行
find /v "#" < hosts
答案 2 :(得分:1)
不完全确定这不会留下没有过滤的东西。但
findstr /R /c:"^[^#]*[0-9a-f:.]" %systemroot%\system32\drivers\etc\hosts
会不正确?检测包含无效格式化IP地址解析的行(ej:一个IP地址,没有名称)但是应该删除任何注释/非活动行。
答案 3 :(得分:1)
此代码只显示第一列中没有#的行,希望这会有所帮助:
setlocal EnableDelayedExpansion
for /f "delims=¶ tokens=*" %%A in ('"type %SystemRoot%\System32\drivers\etc\hosts"') do (
set var=%%A
if NOT "!var:~0,1!" == "#" (echo !var!)
)