Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.01.06;
Скачать: CL | DM;

Вниз

bash   Найти похожие ветки 

 
Сергей М. ©   (2007-12-03 16:42) [0]

Подскажите эффективный скрипт для поиска номера порта по имени сервиса и (опционально) названию протокола ?


 
tesseract ©   (2007-12-03 17:11) [1]

man grep. man netstat


 
umbra ©   (2007-12-03 18:19) [2]

#!/bin/bash                      
#test.sh - ищем порт по имени службы                                
echo                            
grep "\<$1\>" /etc/services      


вызов - sh test.sh pop3


 
Сергей М. ©   (2007-12-04 17:16) [3]


> umbra ©   (03.12.07 18:19) [2]


К сож., не подойдет.

Скрипт возвращает целиком строки, мне же нужен возврат найденного номера порта.

Пока выкрутился так:


# /opt/svcport.sh
#!/bin/sh

if [ -n "$1" ]
then
 found=`expr "$1" : "\s*\([0-9]\+\)\s*"`
 if [ -z "$found" ]
 then
   name=$(echo $1 | tr A-Z a-z)
   proto=$(echo $2 | tr A-Z a-z)
   templ=".*\$[^#]\s*$name\s*\([0-9]\+\)\s*\/\s*$proto[\s*#]*"
   found=`expr "$(cat -e /etc/services)" : "$templ"`
 fi
 echo $found
fi


Пример вызова:

/opt/svcport.sh http tcp

Все чудесно за искл. одной беды - expr регисстрочувствителен при поиске.



Страницы: 1 вся ветка

Текущий архив: 2008.01.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
2-1197289594
Kolan
2007-12-10 15:26
2008.01.06
SHFileOperation ругается


5-1164729857
Doma
2006-11-28 19:04
2008.01.06
Как узнать всех наследников TForm и TDataModule в проекте?


15-1196722280
Jolik
2007-12-04 01:51
2008.01.06
Не встечал ли кто оффлайн браузеров м мохранением в mht формате.


2-1197056115
AntiPupkin
2007-12-07 22:35
2008.01.06
Перечислить ID потоков в открытом процессе


11-1182273081
Thaddy
2007-06-19 21:11
2008.01.06
DDos attack on kolmck and thaddy.co.uk servers