将IP地址和主机名传输到CSV

将IP地址和主机名传输到CSV,csv,batch-file,Csv,Batch File,我正在尝试运行一个批处理脚本,以获取主机名和ip地址,并通过管道连接到.csv文件。 似乎我正在经历一个无止境的循环。导出到excel时,我找不到结束循环的方法。这是我目前的剧本。我正在测试此脚本是否能够从多台PC进行更新。 谢谢 下面是一个VBA函数,用于从Excel/VBA模块中的返回当前主IP地址,简化为@,以尽量减少VBA代码的行数: Function GetIP() Dim IPConfig: For Each IPConfig In GetObject("winmgmts:{

我正在尝试运行一个批处理脚本,以获取主机名和ip地址,并通过管道连接到
.csv
文件。 似乎我正在经历一个无止境的循环。导出到excel时,我找不到结束循环的方法。这是我目前的剧本。我正在测试此脚本是否能够从多台PC进行更新。 谢谢


下面是一个VBA函数,用于从Excel/VBA模块中的返回当前主IP地址,简化为@,以尽量减少VBA代码的行数:

Function GetIP()
    Dim IPConfig: For Each IPConfig In GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2").ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE"): GetIP = IPConfig.IPAddress(0): Next
End Function
从技术上讲,这是三行代码(但不正确的编码技术..只是说明问题)


请参阅“”的完整(正确)巧妙答案。不需要批处理文件或VB脚本。

您想要Excel中的当前IP地址吗?可能是重复的,请导致我得到无休止的循环,这意味着在bash脚本中成功导出!您是否有理由需要使用批处理文件而不是从Excel中检索IP(例如?@ashleedawg“从Excel中检索”)来将此复杂化?这远远不是“在”Excel中,即使用WMI的vbscript。
Function GetIP()
    Dim IPConfig: For Each IPConfig In GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2").ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE"): GetIP = IPConfig.IPAddress(0): Next
End Function