我想检查一下我的电脑上是否存在主机名(即hosts
下的C:\Windows\System32\drivers\etc
文件中的主机名。)
有没有办法使用批处理命令或其他方式查找是否存在?
答案 0 :(得分:1)
尝试使用一些额外的信息来填充此批处理文件:
<div ng-app="ExampleApp">
<div ng-controller="ExampleController">
<select ng-model="selectRole" ng-options="role for role in selectedrole">
</select>
</div>
答案 1 :(得分:0)
您可以做的是ping您正在寻找的主机名,然后检查某些字符串,这些字符串将显示是否可以找到主机名。看起来像这样(我猜):
@echo off
setlocal EnableDelayedExpansion
set /p input= "Hostname"
set hostexists=yes
For /f "tokens=1,2" %%a in ('ping -n 1 !input!') do (
if "x%%a"=="xFOO" if "x%%b"=="xBAR" set hostexists=no
)
If "x!hostexists!"=="xno" (
echo. "Does not exist"
) ELSE (
echo. "Does exist"
Pause
基本思想是,当您尝试ping不可用的主机名时,您将从命令行获得特定输出。自己尝试一下:打开cmd.exe(点击Windows-Button + R并键入cmd
),然后在命令行中写ping foobar
并稍等片刻。您应该收到如下消息:Ping-Request找不到“foobar”[...]。您将前两个单词放入代码中:第一个单词到FOO
,第二个单词到BAR
。
程序将查看ping命令的输出,并将前两个单词(= tokens)放在%%a
和%%b
中,检查它们是否等于所需单词,标记主机是否正确不存在。
我希望这会有所帮助:)不确定这是否是你想要的:D
问候
geisterfurz007
答案 2 :(得分:0)
更简单,更强大的解决方案
url.bat:
@echo off
set url=%1
ping -n 1 %url% > nul 2> nul
if "%errorlevel%"=="0" (
echo %url% exists
) else (
echo %url% does not exist
)
测试
> url.bat google.com
google.com exists
> url.bat google.commmmmm
google.commmmmm does not exist