Пакетный файл для установки первых 3 октетов диапазона IP, а затем запрашивает у пользователя последний октет ... затем объединяет оба для установки IP-адреса - PullRequest
0 голосов
/ 20 января 2019

Я работал над командным файлом для настройки компьютеров в разных местах.

В начале пакета я хотел бы установить первые 3 октета диапазона IP-адресов, если требуется, который сохраняется в текстовый файл.

Я сейчас использую:

cls & set /p IPRANGE=Please Type the first 3 octets of the IP Range for example 10.202.204:
Echo %IPRANGE% > %~d0\StagingTool\iprange.txt
Notepad %~d0\StagingTool\iprange.txt

Тогда для каждой машины, которую я настраиваю, требуется последний октет, введенный пользователем ...

Я пробовал следующее:

set /p LASTOCT=Please type in the last Octet for example .41 :
set /p PUSHLASTOCT=%LASTOCT% >%~d0\StagingTool\lastip.txt
set /p FIRST3=<%~d0\StagingTool\IPRANGE.txt
set /p LAST1=<%~d0\StagingTool\LASTIP.txt
set /p FINALIP=%FIRST3%%LAST1% >%~d0\StagingTool\FINALIP.txt
set /p INSERTIP=<%~d0\StagingTool\FINALIP.txt
set /p SUBNET=<%~d0\StagingTool\subnet.txt
set /p GATEWAY=<%~d0\StagingTool\gateway.txt
netsh interface ip set address name="Wi-Fi" static %INSERTIP% %subnet% %gateway% & echo.

Как видно из вышесказанного, я пытаюсь собрать первые 3 октета и последний октет, чтобы сформировать окончательный IP.

В файле FINALIP.txt я получаю пробел между двумя входами, например 192.168.1 .35, что означает, что адрес IPV4 недопустим при запуске заданного адреса.

Есть идеи, как это можно исправить или лучше сделать?

Спасибо!

1 Ответ

0 голосов
/ 01 февраля 2019

Вы вводите echo пробел с помощью команды Echo %IPRANGE% > %~d0\StagingTool\iprange.txt, которую необходимо удалить. Вы можете написать:

echo %IPRANGE%>%~d0\StagingTool\iprange.txt

или

echo %IPRANGE%> %~d0\StagingTool\iprange.txt

или даже проще:

(echo %IPRANGE%)>%~d0\StagingTool\iprange.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...