LINUX.ORG.RU

История изменений

Исправление sunny1983, (текущая версия) :

Что подразумевается под «распарсит вывод»? Лучше с примерами данных и желаемого результата. От этого зависит - хватит ли bash или нужен язык

Ну скажем обнаруживает в выводе группы строк, содержащих символосочетание «VID» и выводит для каждой группы (включая строку, содержащую символосочетание) строки 1,5,6. После в каждой строке обнаруживает двоеточие, следующий за ним пробел и следующие за ним символы и удаляет всё что после этих символов. Получится конструкция:

VID             : 2
Current Tagged Ports  : 16
Current Untagged Ports: 1-6,8
Дальше нужно что-то сделать, чтобы строка «1-6,8» превратилась в «1,2,3,4,5,6,8»
Далее, если опрашивался свитч 172.16.5.5, то должны сформироваться два массива:
tagged-2-172.16.5.5-2="16"
untagged-2-172.16.5.5-2="1,2,3,4,5,6,8"
Ну а дальше, после того как будут опрошены все свитчи, можно будет придумать как это выводить.
Но для начала мне хотя бы понять как передать в telnet: логин, пароль и команду, а потом завершить сеанс.

Исправление sunny1983, :

Что подразумевается под «распарсит вывод»? Лучше с примерами данных и желаемого результата. От этого зависит - хватит ли bash или нужен язык

Ну скажем обнаруживает в выводе группы строк, содержащих символосочетание «VID» и выводит (включая строку, содержащую символосочетание) строки 1,5,6. После в каждой строке обнаруживает двоеточие, следующий за ним пробел и следующие за ним символы и удаляет всё что после этих символов. Получится конструкция:

VID             : 2
Current Tagged Ports  : 16
Current Untagged Ports: 1-6,8
Дальше нужно что-то сделать, чтобы строка «1-6,8» превратилась в «1,2,3,4,5,6,8»
Далее, если опрашивался свитч 172.16.5.5, то должны сформироваться два массива:
tagged-2-172.16.5.5-2="16"
untagged-2-172.16.5.5-2="1,2,3,4,5,6,8"
Ну а дальше, после того как будут опрошены все свитчи, можно будет придумать как это выводить.
Но для начала мне хотя бы понять как передать в telnet: логин, пароль и команду, а потом завершить сеанс.

Исходная версия sunny1983, :

Что подразумевается под «распарсит вывод»? Лучше с примерами данных и желаемого результата. От этого зависит - хватит ли bash или нужен язык

Ну скажем обнаруживает в выводе группы строк, содержащих символосочетание «VID» и выводит (включая строку, содержащую буквосочетание) строки 1,5,6. После в каждой строке обнаруживает двоеточие, следующий за ним пробел и следующие за ним символы и удаляет всё что после этих символов. Получится конструкция:

VID             : 2
Current Tagged Ports  : 16
Current Untagged Ports: 1-6,8
Дальше нужно что-то сделать, чтобы строка «1-6,8» превратилась в «1,2,3,4,5,6,8»
Далее, если опрашивался свитч 172.16.5.5, то должны сформироваться два массива:
tagged-2-172.16.5.5-2="16"
untagged-2-172.16.5.5-2="1,2,3,4,5,6,8"
Ну а дальше, после того как будут опрошены все свитчи, можно будет придумать как это выводить.
Но для начала мне хотя бы понять как передать в telnet: логин, пароль и команду, а потом завершить сеанс.