The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"программирование на shell для чайника"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"программирование на shell для чайника"  
Сообщение от NastenOK email(ok) on 07-Авг-08, 14:41 
помогите пожалуйста написать скрипт.
На shell, который из множества ip адресов будет отбирать и выводить на экран все ip у которых свитч 3226 либо 3526 и сохранить информацию в текстовый файл.(дана таблица  в которой есть мн-во столбцов "номер, ip адрес, адрес абонента, телефон, тип свитча")
Помогите пожалуйста!!!
Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "программирование на shell для чайника"  
Сообщение от phpcoder email(??) on 07-Авг-08, 14:44 
>помогите пожалуйста написать скрипт.
>На shell, который из множества ip адресов будет отбирать и выводить на
>экран все ip у которых свитч 3226 либо 3526 и сохранить
>информацию в текстовый файл.(дана таблица  в которой есть мн-во столбцов
>"номер, ip адрес, адрес абонента, телефон, тип свитча")

Не очень ясно о какой таблице идёт речь. Она в файле или в БД? Приведите более точные данные.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "программирование на shell для чайника"  
Сообщение от NastenOK email(ok) on 07-Авг-08, 15:16 
Данные находятся в текстовом файле
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "программирование на shell для чайника"  
Сообщение от phpcoder email(??) on 07-Авг-08, 15:21 
>Данные находятся в текстовом файле

Жаль, что вы не привели формат текстового файла. Что ж, представим, что в нём 5 столбцов, которые разделяются пробелом:

[c0der@xxx ~]$ cat DATA.txt
1 127.0.0.1 адрес1 01278 3226
2 192.168.1.2 адрес2 12345 3526
3 192.168.1.2 адрес2 12345 3527

Вот как можно получить нужные IP-адреса:

[c0der@xxx ~]$ awk '{if($5=="3226" || $5 == "3526"){print $2}}' DATA.txt
127.0.0.1
192.168.1.2

Чтобы сохранить их в файл достаточно просто перенаправить вывод этой команды в файл:

awk '{if($5=="3226" || $5 == "3526"){print $2}}' DATA.txt >out.txt

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "программирование на shell для чайника"  
Сообщение от NastenOK email(ok) on 07-Авг-08, 15:38 
Спасибо огромное за помощь!
А можно ли использовать grep и чем они различаются с awk???
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "программирование на shell для чайника"  
Сообщение от phpcoder email(??) on 07-Авг-08, 15:42 
>А можно ли использовать grep и чем они различаются с awk???

grep? Можно, тогда придётся городить регулярное выражение и потом он по умолчанию возвращает всю найденную строку, а нам нужен лишь IP-адрес. Это можно "исправить" с помощью опции -o, но эта опция не везде есть, да и awk выглядит более естественно и в случае чего подправить его будет проще.

Ответ на вопрос "чем grep отличается от awk" вкратце звучит так: "много чем". :)


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "программирование на shell для чайника"  
Сообщение от NastenOK email(ok) on 07-Авг-08, 16:09 
А если данные будут находися в БД (SQL)???


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "программирование на shell для чайника"  
Сообщение от phpcoder email(??) on 07-Авг-08, 16:11 
>А если данные будут находися в БД (SQL)???

echo "SELECT ip FROM table WHERE ..." | mysql --silent database >out.txt

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "программирование на shell для чайника"  
Сообщение от NastenOK email(ok) on 07-Авг-08, 19:37 
Если IP не хранятся  в каком-либо файле, а просто работают свитчи и скрипт работая удалённо должен определить все айпи адреса свитчей типа 3226 и 3526 и сохранить их в отдельном текстовом файле?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру