На самом деле это единственный раздел про unix на этом форуме
Модераторы: /dev/random , Модераторы разделов
жучара
Сообщения: 950
ОС: астралинукс
Сообщение
жучара » 02.12.2020 15:13
Друзья! Файл
foo.txt
Shell
$ cat foo.txt
q1
q2
w2
$
Если мы будем в этом файле искать буквы, согласно шаблону, то всё найдётся:
Shell
$ cat foo.txt | grep [q-w]
q1
q2
w2
$
но не цифры. Выводится почему-то только первое совпадение, а нужно, чтобы вывелись все строки, поскольку цифры присутствуют в каждой строке
Shell
$ cat foo.txt | grep [0-9]
q1
$
ЧЯДНТ? Спасибо, кто откликнется.
Я просто читаю маны.
bormant
Сообщения: 1354
Сообщение
bormant » 02.12.2020 15:16
У вас grep сломан. Шутка.
Возьмите '[0-9]' в кавычки или апострофы. У вас в текущем каталоге есть файл с именем "1", оболочка раскрывает [0-9] в список имен подходящих файлов, команда получается grep 1.
Код: Выделить всё
$ echo -e 'q1\nq2\nq3' | grep '[0-9]'
q1
q2
q3