回答
ipconfig | find "IP Address" > out.txt
您仍然需要从“IP地址.............提取IP地址:0.0。 0.0“并修剪任何空格。
请记住,可能有多个IP地址,如果您有多个网络适配器。 – Vicky 2010-12-15 15:26:22
最简单的我能想到的:
ipconfig > file
是的,但是你知道如何获得IP地址吗? * hm * – 2010-12-15 15:18:09
@fuzi:你可以像'ipconfig |找到“IPv4”>“文件”,然后“for/f”标记= 2 delims =:“%i in(file)do echo%i >> ip.txt' – 2010-12-15 15:44:04
这是你在找什么?
@echo on
for /f "tokens=1-2 delims=:" %%a in ('ipconfig^|find "IP Address"') do set ip=%%b
set ip=%ip:~1%
echo %ip%
就加了一点儿也显示网关(路由器)和ping,看看你的DNS工作:
@echo off
:ipaddress
::Get IP address and save it to ip
for /f "tokens=1-2 delims=:" %%a in ('ipconfig^|find "IP Address"') do set ip=%%b
set ip=%ip:~1%
:gateway
::Get Gateway address and save it to gateway
for /f "tokens=1-2 delims=:" %%a in ('ipconfig^|find "Gateway"') do set gateway=%%b
set gateway=%gateway:~1%
echo IP address is %ip%
echo You router address is %gateway%
pause
cls
ping %gateway% -a
pause
:end
哪个IP地址?哪个网关? – 2011-10-13 08:45:04
对于Windows 7的机器:
ipconfig | findstr /b /c:" IPv4" > output.txt
有是开头引号和IPv4之间的三个空格字符,因为该行技术上以空格开头。我不知道在findtr命令之前剥离它的方法。
请记住,即使它的技术上是正则表达式,Windows命令行不会像C#或其他任何方式解析它们。有一个可接受的序列/通配符列表(标记为XP,但它在Win7环境中适用于我)here。
花了我一些试验和错误,但这只让你分配IPv4地址的行,而不是“自动配置”的东西,混乱其他findtr迭代的结果。
这是一个可以完成这项工作的vbs脚本。请注意,这是针对外部IP地址的。只要看看上面的内部/本地IP地址。
这里是代码。只需创建一个文本文件,粘贴,重命名为something.vbs
Const ForReading = 1
Const ForAppending = 8
Dim ipLog, objHTTP, strHTML, varStart
Dim varStop, strIP, strCurrIP, objFSO
Dim txtFile, strLine, objShell
' Log for tracking external IP addresses
ipLog = "ExternalIP.txt"
' Get current external IP address from web
Set objHTTP = CreateObject("MSXML2.XMLHTTP")
Call objHTTP.Open("GET", "http://checkip.dyndns.org", False)
objHTTP.Send()
strHTML = objHTTP.ResponseText
' Extarct IP from HTML if HTML was recieved
If strHTML <> "" Then
varStart = InStr(1, strHTML, "Current IP Address:", vbTextCompare) + 19
If varStart Then varStop = InStr(varStart, strHTML, "</body>", vbTextCompare)
If varStart And varStop Then strIP = Mid(strHTML, varStart, varStop - varStart)
Else
strIP = "Unavailable"
End If
' Remove preceeding or trailing spaces
strCurrIP = Trim(strIP)
' Check for log file and last log entry
Set objFSO = CreateObject("Scripting.FileSystemObject")
If Not (objFSO.FileExists(ipLog)) Then
' If log file doesn't exist create it
Set txtFile = objFSO.CreateTextFile(ipLog, True)
strIP = ""
Else
' Get last external IP address entry from log file
Set txtFile = objFSO.OpenTextFile(ipLog, ForReading)
Do Until txtFile.AtEndOfStream
strLine = txtFile.ReadLine
If Len(strLine) > 0 Then
strIP = strLine
End If
Loop
End If
txtFile.Close
' Extarct last external IP from log file entry
If strIP <> "" Then
varStart = 1
varStop = InStr(varStart, strIP, ",", vbTextCompare) - 1
If varStop Then strIP = Mid(strIP, varStart, varStop - varStart)
' Remove preceeding or trailing spaces
Trim(strIP)
Else
strIP = "Unavailable"
End If
' Copy IP to clipboard
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "CMD /C ECHO " & strCurrIP & " | CLIP", 2
' Check if external IP has changed
If strCurrIP = strIP Then
' If unchanged display IP
MsgBox "External IP: " & strCurrIP & " is unchanged"
Else
' If changed log to file and display IP
Set txtFile = objFSO.OpenTextFile(ipLog, ForAppending)
txtFile.Write(strCurrIP & vbTab & vbCrLf)
txtFile.Close
MsgBox "External IP: " & strCurrIP & vbCrLf & "This IP address has been logged"
End If
' Clear variables
Set ipLog = Nothing
Set objHTTP = Nothing
Set strHTML = Nothing
Set varStart = Nothing
Set varStop = Nothing
Set strIP = Nothing
Set strCurrIP = Nothing
Set objFSO = Nothing
Set txtFile = Nothing
Set strLine = Nothing
Set objShell = Nothing
我不邀功这个剧本,我只是觉得,我没有在摸我的计算机上的文件夹中长时间。
- 1. 通过IP地址加入文件
- 2. IIS Url重写IP地址
- 3. log4net - 如何将服务器的IP地址写入日志
- 4. 如何在文本文件的不同行中写入每个IP地址?
- 5. IP地址SQL注入
- 6. 文本框只允许IP地址无需验证,直到IP被写入C#
- 7. 试图将IP地址写入到Visual Basic中的文本框中
- 8. StackExchange.Redis - 写入到redis群集指向本地IP地址
- 9. 如何将IP地址解析为Haskell中的IP地址?
- 10. 限制使用.htaccess和ip地址对文件夹的写入权限
- 11. 批处理文件中的IP地址
- 12. 在文件中搜索IP地址
- 13. 检索的IP地址与RKA IP地址的中间件
- 14. 将IP数据包从一个IP地址转发到另一个IP地址
- 15. IP地址和Datagridview控件
- 16. IP地址
- 17. php:geting ip地址
- 18. 取IP地址
- 19. ip地址
- 20. cURL IP地址
- 21. 块IP地址
- 22. 与IP地址
- 23. ejabberd ip地址
- 24. Rails 3,将本地IP地址插入记录字段
- 25. 使用Apache将子文件夹指向另一个IP地址
- 26. 使用c将文件从一个IP地址发送到另一个IP地址#
- 27. 将数据写入本地JSON文件
- 28. 如何将地形写入.raw文件?
- 29. 将地图写入文件C++
- 30. Django网址与IP地址
当你说* ip地址*时,我认为你做出了一个危险的假设。许多计算机具有多个IP地址,因为它们具有多个网络适配器,所以请确保您所做的任何操作都支持多个IP。 – 2010-12-15 15:26:41
万一你需要看到你的外部IP地址(你的型号/路由器分配的),而不是你本地局域网的IP地址,请看这里http://stackoverflow.com/questions/41669330/windows-batch-how-to-get -the-external-ip-into-a-batch-file-variable – 2017-04-29 04:00:57