[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 批处理如何提取ping指定域名返回结果中的ip

本帖最后由 pcl_test 于 2016-11-15 16:45 编辑

用ping命令,ping   www.baidu.com 得出的ip怎样通过批处理复制到粘贴板上!

@echo off
ping  www.baidu.com>>temp.txt
clip<temp.txt
del /q temp.txt
echo 信息已经复制到粘贴板
pause

TOP

回复 2# 白夜


    额,大婶有点误会我的意思了,我是想将ping的ip复制过来,而不是所有信息

TOP

回复 3# 红烧猪蹄
问题不就在那了么,这个容易
@ECHO OFF
for /f "skip=1 tokens=2 delims=[" %%a in ('ping  www.baidu.com') do (echo %%a)>>temp.txt
for /f "tokens=1 delims=]" %%b in (temp.txt) do (echo %%b)>>ip.txt
clip < ip.txt
echo ip已经复制到粘贴板
del /f /q "temp.txt"
del /f /q "ip.txt"
pause

TOP

这种写法更好,你自己选择

@ECHO OFF
set var=
set /p var=输入要获取ip的网址:
for /f "skip=1 tokens=2 delims=[" %%a in ('ping  %var%') do (
   for /f "tokens=1 delims=]" %%b in ("%%a") do (
   echo %%b>>ip.txt
   )
)
cls
clip < ip.txt
echo ip地址已经复制到黏贴板
del /f /q "ip.txt"
pause

TOP

这种写法更好,你自己选择

@ECHO OFF
set var=
set /p var=输入要获取ip的网址:
for /f "skip=1 tok ...
白夜 发表于 2013-1-28 22:54


我也来一个,不用临时文件,使用系统自带 mshta.exe 。
  1. @ECHO OFF
  2. Set host=
  3. Set ip=
  4. Set /p host=请输入要获取 ip 的主机名称:
  5. For /f "skip=1 tokens=2 delims=[" %%a in ('ping  %host%') do (
  6. For /f "tokens=1 delims=]" %%b in ("%%a") do (
  7. Set ip=%%b
  8. )
  9. )
  10. mshta javascript:window.clipboardData.setData('text',"%ip%");window.close();
  11. echo 主机 %host% 的IP地址 %ip% 已经复制到剪贴板!
  12. pause
复制代码
『千江有水千江月』千江有水,月映千江;万里无云,万里青天。    http://yu2n.qiniudn.com/

TOP

回复 4# 白夜


    就这个很不错,而且个人是ping固定域名的,所以这个更方便,不过因为要生成temp,所以效率有点慢,但是,还是谢谢大叔们的帮助!

TOP

回复 6# yu2n


    你的也很不错,而且不生成temp,但是要是遇上某些精简过的系统应该就不管用了吧!



ps:mshta.exe百科过,不过不知道是啥, 但是感觉好像不是很重要,所以有被精简的可能

TOP

回复 7# 红烧猪蹄
我才25别叫我大叔

TOP

回复 9# 白夜


    也许楼主上小学

TOP

@echo on & setlocal EnableDelayedExpansion
for /f "tokens=2 delims=[" %%i in ('ping g.cn -n 1 ') do set ip=%%i
for /f "tokens=2 delims=]" %%i in ('ping g.cn -n 1 ') do set tmp=%%i
set tmp=]%tmp%
字符串替换
set ip=%ip:%tmp%=%   '错误
变量ip替换tmp为空,不知为什么

TOP

返回列表