Найдите символы в файле

sudo su - будет в ~/.bash_history если Ваша оболочка является ударом.

echo 1234567zz будет в /root/.bash_history если оболочка корня является ударом.

Объяснение этого было уже отправлено лютиком золотистым.

2
19.09.2014, 19:10
2 ответа

Можно использовать два последовательных grep-вызова:

grep 'x' file.txt | grep 'y.*y'

или один с тремя вариантами:

grep -E 'x.*y.*y|y.*x.*y|y.*y.*x' file.txt
3
27.01.2020, 22:00

Если их можно найти в любом порядке, я сомневаюсь, что вы сможете получить что-нибудь короче, чем ответ @jofel. Если вы можете использовать другие инструменты, вот некоторые опции:

  1. perl

    perl -pe ' /x/ && /y.*y/ || следующий' файл.
    
  2. awk

    awk '/x/ && /y.*y/' файл
    

Все остальное, что я могу придумать, должно использовать трехсторонний подход @jofel.

1
27.01.2020, 22:00

Теги

Похожие вопросы