我有一个程序来ping计算机,检查注册表,并告诉我结果。我现在正在尝试编写它的脚本,这样我就不必知道ip地址,只需知道计算机的主机名。我找到了一个脚本,给我一个主机名的ip
for /f "tokens=1,2 delims=[]" %%a in ('ping -4 %%a ^| find "Pinging"') do set ip=%%c >nul
我试着简单地将其插入一个更大的循环中,该循环使用一个文件为其提供主机名。
for /f %%A in (%1) do (
for /f "tokens=1,2 delims=[]" %%a in ('ping -4 %%a ^| find "Pinging"') do (
set host=%%a
set ip=%%c
echo "."
echo %ip% %host%
pause
) >>%2
)
我也试过这样,
for /f %%a in (%1) do (
set /p hostname=%%a
for /f "tokens=1,2 delims=[]" %%b in ('ping -4 %%a ^| find "Pinging"') do set ip=%%c >nul
echo %ipaddress% %hostname%
)
请在这方面提供任何帮助,我们将不胜感激。非常感谢。
在MUTCH HEAD BANGING 之后
@echo off
SETLOCAL EnableDelayedExpansion
for /f %%A in (%1) do (
for /f "tokens=1,2 delims=[]" %%a in ('ping /4 /n 1 %%A ^| findstr "Pinging"') do echo "%%A %%b"
)