getDataInBackgroundWithBlock
为什么此批处理文件无法正常工作?
答案 0 :(得分:1)
@echo off
set /p host=
set "ttl="
for /f "delims==< tokens=4" %%b in ('
ping "%host%" -4 -n 1 ^| findstr /I "TTL"
') do (set /A "ttl=%%b")
if defined ttl (
if %ttl% GTR 64 (
echo operating system: Windows - ttl=%ttl%
) else (
echo operating system: linux - ttl=%ttl%
)
) else echo unknown "%host%" host
的变化:
set "ttl="
清空/删除ttl
变量,请参阅下一个if defined ttl
; ping "%host%" -4 -n 1
:
"%host%"
按照目前的记录,%host%
可评估为空字符串,ping ""
结果为ping "%COMPUTERNAME%"
; -4
强制IPv4
ping ""
默认为IPv6
; findstr /I "TTL"
可能Reply from a.b.c.d: Destination host unreachable
; set /A "ttl=%%b"
进行下一次比较; if %ttl% GTR 64
(尝试结果:'' GTR "64"
false ,'1' GTR "64"
true 等。); if defined ttl
。