Expect и данные из файла (Хелп!)

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

jamaica
Сообщения: 2

Expect и данные из файла

Сообщение jamaica »

Есть проблема - есть 150 свичей - их надо перепрошить. В ручную - ломает. Все сделал ровно до того момента как надо в каком то файле хранить ip свичей.

Код: Выделить всё

#!/usr/bin/expect -f
spawn -nottycopy telnet X.X.X.X
expect  "User Name:" { send "admin\n"}
expect  "Password:" { send "admin\n"}
expect    "console#" { send "reload\n"}
expect    "This command will reset the whole system and disconnect your current" { send "y\n"}
expect    eof

Хотелось бы поместить все айпи в файл и чтобы expect и обрабатывал один за другим. Ну и писал в лог файл.
Много перечитал всего, но мало что понял, ибо на английском. Подскажите пожалуйста
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Expect и данные из файла

Сообщение watashiwa_daredeska »

jamaica писал(а):
19.10.2008 04:38
Хотелось бы поместить все айпи в файл и чтобы expect и обрабатывал один за другим. Ну и писал в лог файл.
Много перечитал всего, но мало что понял, ибо на английском. Подскажите пожалуйста

Я бы просто передал IP через командную строку и завернул в sh-скрипт:

Код: Выделить всё

#!/usr/bin/expect -f
- spawn -nottycopy telnet X.X.X.X
+ spawn -nottycopy telnet [lindex $argv 0]
expect  "User Name:" { send "admin\n"}

Код: Выделить всё

#!/bin/sh
xargs -n 1 expect.script <iplist.txt

Можно воспользоваться также опцией -P у xargs, чтобы запустить несколько скриптов параллельно.
Спасибо сказали:
jamaica
Сообщения: 2

Re: Expect и данные из файла

Сообщение jamaica »

Код: Выделить всё

+ spawn -nottycopy telnet [lindex $argv 0]

Это будет переменной?

Код: Выделить всё

xargs -n 1 expect.script <iplist.txt

Это будет отправлять значение в переменную?
Окончательно запутался...
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Expect и данные из файла

Сообщение watashiwa_daredeska »

jamaica писал(а):
19.10.2008 14:39

Код: Выделить всё

+ spawn -nottycopy telnet [lindex $argv 0]

Это будет переменной?

Это будет подставлять значение первого аргумента вместо фиксированного IP.
jamaica писал(а):
19.10.2008 14:39

Код: Выделить всё

xargs -n 1 expect.script <iplist.txt

Это будет отправлять значение в переменную?

Это будет запускать скрипт с аргументом -- каждым значением из iplist.txt
jamaica писал(а):
19.10.2008 14:39
Окончательно запутался...

Обратитесь к первоисточникам.
Спасибо сказали:
kenny85
Сообщения: 3

Re: Expect и данные из файла

Сообщение kenny85 »

Доброго времени суток, вот назрел вопрос.
Пытаюсь с помощью скрипта зайти на свитч, заход получается, делаю send "enable admin\r", проглатывает, но вот когда доходить дело до пороля на админа вот тут то и получается проблема, а суть ее в следующим, пароль есть символы "{" и "$", и пароль соответственно не вводится, не подскажете как можно от этого избавится, точнее это обойти :blush:
Спасибо сказали:
kenny85
Сообщения: 3

Re: Expect и данные из файла

Сообщение kenny85 »

kenny85 писал(а):
27.11.2008 20:55
Доброго времени суток, вот назрел вопрос.
Пытаюсь с помощью скрипта зайти на свитч, заход получается, делаю send "enable admin\r", проглатывает, но вот когда доходить дело до пороля на админа вот тут то и получается проблема, а суть ее в следующим, пароль есть символы "{" и "$", и пароль соответственно не вводится, не подскажете как можно от этого избавится, точнее это обойти :blush:

Все проблему решил все сделал :rolleyes:
Спасибо сказали: