Похожие вопросы

Массовое переименование и перемещение файлов
Отладка программы python, вызванной из другого пакетного файла
Пакетное извлечение файлов из каждого архива с помощью 7-zip
Как отключить и включить USB-порт через командную строку?
задать переменную среды из пакета
переименование (или перемещение) папок, вложенных папок и файлов по определенному пути
VBScript захват StdOut из ShellExecute
Как открыть программу из системного трея через.летучая мышь
Конвертировать несколько PDF в изображения на Mac
Пакетное заполнение pdf формы с использованием данных из Excel
Проблема с проверкой свободного пространства на сетевых дисках-сценарий Powershell
Пакетное преобразование файлов OpenOffice (ODT) в MS Word (DOC)?
Как удалить forkbomb из папки автозагрузки?
Как извлечь часть строки между 2 разделителями в пакетном файле Windows?
Автоматический запуск PuTTY из командной строки с определенным путем запуска

как отобразить локальный IP с помощью пакетного файла?

до сих пор в моем пакетном файле было следующее:

%comspec% /c ipconfig | find "IPv4" > %HOMEPATH%desktopMyIP.txt
%comspec% /c start notepad %HOMEPATH%desktopMyIP.txt

однако, когда я запускаю пакетный файл, MyIP.txt пуст при отображении.

С другой стороны, когда я запускаю каждую строку одну за другой из Windows-запускаю поле поиска, оно работает.

любые идеи как это исправить?

5
задан Ƭᴇcʜιᴇ007
источник

4 ответов

отлично работает из пакетного файла здесь.

несколько советов:

  • попробуйте обернуть пути к файлам HOMEPATH в кавычки, чтобы компенсировать любые потенциальные пробелы:

    %comspec% /c ipconfig | find "IPv4" > "%HOMEPATH%\desktop\MyIP.txt"
  • убедитесь, что вы используете пакетный файл в качестве пользователя, который имеет действительный homepath и рабочий стол (а не, как говорят, учетная запись "система").
  • Try echo %HOMEPATH% один в другом пакетном файле и запустить его таким же образом, проверьте вывод, если %HOMEPATH% расширяется до того, что вы ожидаете (совет добавить "пауза" в конце пакета, чтобы иметь его ждать, пока вы нажмете клавишу).
3
отвечен Ƭᴇcʜιᴇ007 2013-06-13 17:12:50
источник

сохраните приведенный ниже код как пакетный файл в папке system32.

Для Windows 7 хранить пакетный файл в C:\Windows\System32 .

@echo.
@echo                         IP INFORMATION
@echo                         By:Aswin Sha

@ipconfig/all | find "Subnet Mask"
@ipconfig/all | find "IPv4" 
@ipconfig/all | find "Default Gateway"
@ipconfig/all | find "Host Name"
@ipconfig/all | find "DNS Suffix Search List"
@ipconfig/all | find "Physical Address"
@ipconfig/all | find "DHCP Enabled"
@ipconfig/all | find "DHCP Server"
@ping 127.0.0.1
@echo.
@pause
1
отвечен user286064 2014-01-01 17:37:40
источник

Это прекрасно работает с Windows 10:

@echo off
for /f "skip=1 delims={}, " %%A in ('wmic nicconfig get ipaddress') do for /f "tokens=1" %%B in ("%%~A") do set "IP=%%~B"
for /f "tokens=1 delims=:" %%j in ('ping %computername% -4 -n 1 ^| findstr Reply') do (
    set localip=%%j
)
echo Public IP is: %IP%
echo Local  IP is: %localip:~11%

возвращает публичные и приватные IP адреса.

1
отвечен Mahadev Gouda 2018-07-25 05:43:10
источник

вы есть использовать пакетный файл? Согласно вашим требованиям, следующий код сохраняется как GetIP.vbs и выполняется запустит блокнот и распечатать свой IP-адрес (ы) в нем без сохранение в виде текстового файла:

Set colItems = GetObject("winmgmts:\.\root\CIMV2").ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE", , 48)
For Each objItem In colItems
    If InStr(objItem.IPAddress(0), ":") = 0 Then
        strIP = "Description: " & objItem.Description & vbCR & "IP Address : " & objItem.IPAddress(0) & vbNewLine
    End If
Next
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "Notepad"
WScript.Sleep 100
WshShell.AppActivate "Notepad"
WshShell.SendKeys strIP
0
отвечен Karan 2013-06-14 18:22:25
источник

Другие вопросы batch command-line ip ipconfig windows