Получить конкретные строки из текстового файла в другой текстовый файл

У меня есть простой текстовый файл с множеством строк, я пытаюсь получить только те строки, которые начинаются с |V| а также runtime

Что я пробовал:

sed -e '/^\(runtime\|\\|V\\|\)/p' test.txt > test.out.txt
sed -e '/^(runtime\|\\|V\\|)/' test.txt > test.out.txt
sed -e '/^runtime/p' -e '/^\\|V\\|/p' test.txt > test.out.txt
sed -i.bak '/^\\|V\\|\|runtime/!d' test.txt
sed -i.bak '/^(\\|V\\|\|runtime)/!d' test.txt
pcregrep -M '^(runtime|\|V\|)*' test.txt > test.out.txt
egrep '^(runtime|\|V\|)*' test.txt > test.out.txt

Ничего не работает Я получу либо пустой файл, либо дублированный файл.

1 ответ

Решение

Как это? Сначала некоторые тестовые данные:

$ cat foo
|V|
runtime
foo

тогда greṕ команда:

$ grep "^\(|V|\|runtime\)" foo
|V|
runtime
Другие вопросы по тегам