grep не работает

Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
iye
ст. сержант
Сообщения: 360
Зарегистрирован: 2008-07-29 9:02:04

grep не работает

Непрочитанное сообщение 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:~#
Почему не работает, кто нибудь может просветить ? Заранее благодарен!

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.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
Откуда: Рига

Re: grep не работает

Непрочитанное сообщение terminus » 2010-10-01 15:06:12

egrep может попробовать?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

iye
ст. сержант
Сообщения: 360
Зарегистрирован: 2008-07-29 9:02:04

Re: grep не работает

Непрочитанное сообщение iye » 2010-10-01 15:07:19

Та же петрушка, вид сбоку:

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

test-srv:~# echo 10.0.0.1 |egrep '^\d+'
test-srv:~#

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: grep не работает

Непрочитанное сообщение terminus » 2010-10-01 15:12:12

К стати что подрузамевается под '^\d+' - любое целое число с начала строки?
какую часть IP адреса надо получить?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

iye
ст. сержант
Сообщения: 360
Зарегистрирован: 2008-07-29 9:02:04

Re: grep не работает

Непрочитанное сообщение 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:~#

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: grep не работает

Непрочитанное сообщение terminus » 2010-10-01 15:21:33

нипанятна... а если без кавычек?

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

echo 10.0.0.1 | egrep ^\d+
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

iye
ст. сержант
Сообщения: 360
Зарегистрирован: 2008-07-29 9:02:04

Re: grep не работает

Непрочитанное сообщение iye » 2010-10-01 15:23:37

От и я о том же, что нипанятна...

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

test-srv:~# echo 10.0.0.1 |egrep ^\d+
test-srv:~#

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: grep не работает

Непрочитанное сообщение 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:~$ 
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

iye
ст. сержант
Сообщения: 360
Зарегистрирован: 2008-07-29 9:02:04

Re: grep не работает

Непрочитанное сообщение 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.

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: grep не работает

Непрочитанное сообщение 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
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

iye
ст. сержант
Сообщения: 360
Зарегистрирован: 2008-07-29 9:02:04

Re: grep не работает

Непрочитанное сообщение iye » 2010-10-01 15:48:39

Спасибо доктор! )

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35457
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: grep не работает

Непрочитанное сообщение Alex Keda » 2010-10-01 21:48:57

дядя, тег

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

 не забывайте, пожалуйста.
Убей их всех! Бог потом рассортирует...

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: grep не работает

Непрочитанное сообщение hizel » 2010-10-01 21:55:57

во первых, зачем? во вторых, это сломает форматирование моей умной фразы ;]
в третьих, всегда помню, как можно
Последний раз редактировалось hizel 2010-10-01 21:56:45, всего редактировалось 1 раз.
Причина: в третьих
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35457
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: grep не работает

Непрочитанное сообщение Alex Keda » 2010-10-02 17:25:05

=)
Убей их всех! Бог потом рассортирует...

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: grep не работает

Непрочитанное сообщение 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 все работает корректно.
В чем косяк господа? :pardon:
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

kpp
лейтенант
Сообщения: 613
Зарегистрирован: 2009-08-05 16:10:46
Откуда: Украина Днепропетровск-Киев
Контактная информация:

Re: grep не работает

Непрочитанное сообщение kpp » 2013-10-17 14:48:31

работает.
Пример неработающего скрипта в студию!
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.