Твой софтовый форум > Тематические форумы > Операционные системы > Windows

Командная строка

,

сценарий для netsh

Дата публикации: 07.08.2006 - 15:36
Voprosovmnogo
Зраствуйте, помогите пожалуста,как должен выглядеть сценарий команды netsh для смены IP-адресса в локальной сети написаный в блокноте,сколько не пытался не получается blink.gif
Love.sys
Хм, как я понял необходимо перед вводом команд и параметров ввести netsh interface ip. Для запуска команд Netsh необходимо подключиться к серверу, на котором запущен сервер терминалов, с помощью программы «Подключение к удаленному рабочему столу».

Вот синтаксис команды set address

(Настройка IP-адреса и основного шлюза для указанного интерфейса.)

Синтаксис
CODE
set address [name=]имя_интерфейса [source=]{dhcp | static [addr=]IP-адрес [mask=]маска_подсети [gateway=]{none | основной_шлюз [[gwmetric=]метрика_шлюза]}}


Параметры
CODE
[name =] имя_интерфейса
Обязательный параметр. Указывает имя интерфейса, для которого настраивается IP-адрес и шлюз. Значение параметра имя_интерфейса должно совпадать с именем интерфейса, указанным в окне «Сетевые подключения». Если значение параметра имя_интерфейса содержит пробелы, его следует заключать в кавычки (например "имя интерфейса").
[source=]{dhcp | static [addr=]IP-адрес [mask=]маска_подсети [gateway=]{none | основной_шлюз [[gwmetric=]метрика_шлюза]}}

Обязательный параметр. Указывают, задается ли IP-адрес автоматически с помощью протокола DHCP (Dynamic Host Configuration Protocol) или является статическим. Если IP-адрес является статическим, параметр IP-адрес указывает настраиваемый адрес, а параметрмаска_подсети указывает маску подсети настраиваемого IP-адреса. Кроме того, для статического адреса также можно указать, использовать ли текущий основной шлюз (если указан), или настроить его для данного адреса. если шлюз необходимо настроить, значение параметра основной_шлюз указывает IP-адрес настраиваемого основного шлюза, а значение параметра метрика_шлюза задает метрику шлюза.
Естесно параметр /? отображает справку в командной строке.
GK5678
Добавлю немного:
Получение конфигурации сети:
CODE
netsh interface dump >c:netsetts.txt

Для загрузки в случае необходимости:
CODE
netsh -f netsetts.txt

Пример строки:
CODE
set address name="LAN Connection" source=static addr=10.0.5.99 mask=255.255.255.0 gateway=10.0.5.1

ЗЫ: имя netsetts.txt вымышленное. Любое совпадение с реальн... smile.gif
Voprosovmnogo
QUOTE(Гражданин @ 4.08.2006 - 23:06)

Естесно параметр /? отображает справку в командной строке.
*



Справка есть,ее читал и инете все просмотрел по этой команде,вот только не нашел где написано,как должен выглядеть сценарий

Если в консоле последовательно выполнять:

netsh
interface ip(можно раздельно,можно сразу)
set address name="Подключение по локальной сети" static 192.168.0.5 255.255.255.0 192.168.0.1(остальный параметры пока не интересуют)

Все срабатывает smile.gif

Тоже самое написаное в сценарии не работает

Если написать netsh -c "interface ip" ,то до этой точки все нормально,как дописать остальные параметры sad.gif
Love.sys
У меня почему то работает в Bat скрипте.
Voprosovmnogo
QUOTE(Гражданин @ 6.08.2006 - 17:07)
У меня почему то работает в Bat скрипте.
*



У меня и так тоже не работает sad.gif Наверное это связано со шрифтами:запись в блокноте "Подключение по локальной сети" отображается в командной строке как "юб*фмтфжлтяюмл"

Но все равно спасибо за участие smile.gif
Love.sys
Попробуй вместо "Подключение по локальной сети" вставить в текст что то вроде "Local connect" (предварительно переименовав подключение)
А сам код разбери по кусочкам, пиши в *.Bat или *.CMD следующие:
CODE
netsh -c interface ip set address name="Podkl_po_seti" static 192.168.0.5 255.255.255.0 192.168.0.1 ....


Внимание! Всё должно быть прописанно в СТРОЧКУ! А не на отдельной строке. Удачи =)

И ещё вот: Синтаксис
CODE
netsh [-a файл_псевдонима] [-c контекст] [-r уд_компьютер] [{команда_Netsh|-f файл_сценария}]

Параметры
-a
Возвращает к командной строке netsh после выполнения команды файл_псевдонимов.
файл_псевдонимов
Указывает имя текстового файла, который содержит одну или несколько команд netsh.
-c
Переход к заданному контексту netsh.
-r
Настройка удаленного компьютера.
уд_компьютер
Указывает список настаиваемых удаленных компьютеров.
команда_Netsh
Указывается команда netsh, которую требуется запустить.
-f
Выход из программы Netsh.exe после выполнения сценария.
файл_сценария
Выбор сценария, который требуется запустить.
/?
Отображает справку в командной строке.

Короче так, "Контекст" задает контекст netsh.
В твоём случае это Интерфейс (Производит настройку протокола TCP/IP (включая адреса, используемые по умолчанию шлюзы, серверы DNS и WINS) и отображает конфигурацию и статистические данные.)

Вот:
CODE
set address [name=]имя_интерфейса [source=]{dhcp | static [addr=]IP-адрес [mask=]маска_подсети [gateway=]{none | основной_шлюз [[gwmetric=]метрика_шлюза]}}

CODE
add address [name=]имя_интерфейса [addr=]IP-адрес [mask=]маска_подсети [[gateway=] основной_шлюз [gwmetric=]метрика_шлюза]

Всё в Одну строчку!
Love.sys
Короче так, вот тебе всё готовое. Бери - запускай. С кодировками разобрался, с командой тоже. В аттаче скачивай.

Имя интерфейса = Подключение по локальной сети
Ip = те, которые ты написал. (можешь потом сменить)
Voprosovmnogo
QUOTE(Гражданин @ 6.08.2006 - 22:47)
Имя интерфейса = Подключение по локальной сети

*



Отлично biggrin.gif ,все работает(thanks нажму позднее,сейчас не дает)


Вот только "Подключение по локальной сети" у меня отражается в блокноте теперь "бмькеырдло",как понял это у меня на компьютере,не разъяснишь в чем секрет этого издевательства кодировок mad.gif (Windows XP левый,SP1)как
это можно исправить?

(Извини за оф-топ)
Love.sys
Да у тебя всё нормально, дело в шрифтах вообще. Просто пиши в DOS кодировке.
Быстрый ответ:

 Включить смайлики |  Добавить подпись




SoftoRooM.NeT lite версия, полная версия - здесь: Командная строка
SoftoRooM.NeT © 2004-2020