Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
iye
- ст. сержант
- Сообщения: 360
- Зарегистрирован: 2008-07-29 9:02:04
Непрочитанное сообщение
iye » 2010-10-01 14:58:05
Приветствую!
Столкнулся с непоняткой в грепе ...
Код: Выделить всё
test-srv:~# echo 10.0.0.1 |grep '^\d+'
test-srv:~# echo 10.0.0.1
10.0.0.1
test-srv:~#
Почему не работает, кто нибудь может просветить ? Заранее благодарен!
iye
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Непрочитанное сообщение
terminus » 2010-10-01 15:06:12
egrep может попробовать?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
terminus
-
iye
- ст. сержант
- Сообщения: 360
- Зарегистрирован: 2008-07-29 9:02:04
Непрочитанное сообщение
iye » 2010-10-01 15:07:19
Та же петрушка, вид сбоку:
Код: Выделить всё
test-srv:~# echo 10.0.0.1 |egrep '^\d+'
test-srv:~#
iye
-
terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Непрочитанное сообщение
terminus » 2010-10-01 15:12:12
К стати что подрузамевается под '^\d+' - любое целое число с начала строки?
какую часть IP адреса надо получить?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
terminus
-
iye
- ст. сержант
- Сообщения: 360
- Зарегистрирован: 2008-07-29 9:02:04
Непрочитанное сообщение
iye » 2010-10-01 15:17:17
Подразумевается любое количество цифр больше одной с начала строки. Мне не нужно получить часть адреса .. мне интересно почему греп так криво работает с цифрами .. в перле тот же вариант отрабатывает на раз-два.
Код: Выделить всё
#!/usr/bin/perl -w
$title = "10.1.1.11";
$title =~ m/^(\d+)/;
print "====\n";
print $1;
print "====\n";
Код: Выделить всё
test-srv:~# ./test1.pl
====
10====
test-srv:~#
iye
-
terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Непрочитанное сообщение
terminus » 2010-10-01 15:21:33
нипанятна... а если без кавычек?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
terminus
-
iye
- ст. сержант
- Сообщения: 360
- Зарегистрирован: 2008-07-29 9:02:04
Непрочитанное сообщение
iye » 2010-10-01 15:23:37
От и я о том же, что нипанятна...
Код: Выделить всё
test-srv:~# echo 10.0.0.1 |egrep ^\d+
test-srv:~#
iye
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-10-01 15:34:13
Код: Выделить всё
hizel@wnight:~$ echo 10.0.0.1 | grep --perl-regexp '^\d+'
10.0.0.1
hizel@wnight:~$ echo 10.0.0.1 | grep '^\d+'
hizel@wnight:~$
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
iye
- ст. сержант
- Сообщения: 360
- Зарегистрирован: 2008-07-29 9:02:04
Непрочитанное сообщение
iye » 2010-10-01 15:38:55
А для бестолковых можно комент почему он не ищет без ключа перл-регексп ? Да и в мане написано что это эксперементальная функция ...
Код: Выделить всё
--perl-regexp
Interpret PATTERN as a Perl regular expression. This is highly experimental and grep -P may warn of unimplemented features.
iye
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-10-01 15:42:16
с бестолковыми разговаривать бессмысленно и скучно
use grep -E '^[0-9]+' or use grep -E '^[[:digit:]]+', Luke
Последний раз редактировалось
hizel 2010-10-01 15:42:27, всего редактировалось 1 раз.
Причина: Luke
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
-
Контактная информация:
Непрочитанное сообщение
Alex Keda » 2010-10-01 21:48:57
Убей их всех! Бог потом рассортирует...
Alex Keda
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-10-01 21:55:57
во первых, зачем? во вторых, это сломает форматирование моей умной фразы ;]
в третьих, всегда помню, как можно
Последний раз редактировалось
hizel 2010-10-01 21:56:45, всего редактировалось 1 раз.
Причина: в третьих
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
-
Контактная информация:
Непрочитанное сообщение
Alex Keda » 2010-10-02 17:25:05
Убей их всех! Бог потом рассортирует...
Alex Keda
-
CTOPMbI4
- прапорщик
- Сообщения: 482
- Зарегистрирован: 2008-05-02 20:20:47
- Откуда: Made in Russia
Непрочитанное сообщение
CTOPMbI4 » 2013-10-17 11:04:20
не работает должным образом
Код: Выделить всё
uname -a
FreeBSD gw3 8.2-RELEASE-p10 FreeBSD 8.2-RELEASE-p10 #0: Fri Dec 7 04:55:25 YEKT 2012 root@gw:/usr/obj/usr/src/sys/kern_8.1v2_3 i386
"-o" — выбирать только совпавшую часть подстроки
выдает все и сразу.
проверил на 9.1 все работает корректно.
В чем косяк господа?

Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!
CTOPMbI4
-
kpp
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
-
Контактная информация:
Непрочитанное сообщение
kpp » 2013-10-17 14:48:31
работает.
Пример неработающего скрипта в студию!
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
kpp