egrep и

у grep есть вариант перечисления искомого
egrep "a|b|s" --соответственно будет искать a b s по отдельности

а как указать чтобы искал a b s в одной строке? только цепочкой грепов grep "a"|grep "b"|grep "s" ?
Именно grep/egrep до 2 включительно паттернов лучшие варианты - пайпом или
egrep '(a.b*|b.*a)' file
А если больше можно и удобнее awk, например
 awk '/a/&&/b/&&/c/' file
Несколько примеров бы привели: вход - выход.
Ориентируясь только на вопрос, может что-то вроде этого устроит:
egrep "a.*b.*s"
vinc
Несколько примеров бы привели: вход - выход.
Ориентируясь только на вопрос, может что-то вроде этого устроит:
egrep "a.*b.*s"
Так найдет совпадение только, если порядок соблюден как в условии, а если в строке будет a s b или b s a, то греп не найдет совпадений.
Absalon, я знаю как работают регулярные выражения.
Но я не знаю, что точно нужно автору топика;)
vinc
Absalon, я знаю как работают регулярные выражения.
Но я не знаю, что точно нужно автору топика;)
Да я без претензий :)
Автору, судя по всему, нужен поиск таким образом организовать, чтобы выводило только те строки, которые совпадают сразу с тремя паттернами одновременно. Про порядок он правда не дал инфу, но на всякий случай примем, что паттерны могут в произвольном порядке быть расположены.
да, проивзольный порядок и всё такое, просто подумалось что должна быть более короткая форма grep "a"|grep "b"|grep "s"
grayich
а как указать чтобы искал a b s в одной строке? только цепочкой грепов grep "a"|grep "b"|grep "s" ?
а чем тя цепочка не устраивает?
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
устраивает, но логично ожидать сокращённой версии этого, задачка то частая
grayich, не усложняй!
выигрыша никакого)))
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
 
Зарегистрироваться или войдите чтобы оставить сообщение.