Хотя это и не команда Unix, вы можете найти (интерактивное )руководство по bash, и не только по адресуhttp://www.learnshell.org
Он охватывает несколько тем и имеет интерактивную оболочку для практики shell/python и других тем программирования.
Вам понадобится команда grep
.(man grep
).
И перенаправление файлов >
.(man bash
)
Из руководства grep
.
.
.
SYNOPSIS
grep [OPTION...] PATTERNS [FILE...]
.
.
.
-F, --fixed-strings
Interpret PATTERNS as fixed strings, not regular expressions.
.
.
.
Я рекомендую прочитать это руководство более подробно.
Это хрестоматийное использование grep, настолько часто, что его называют «grepping» как глагол гораздо чаще, чем его называют перенаправлением.
fgrep hello file.txt > file2.txt
fgrep
— это вариант grep
, который ищет только f
фиксированные строки (в отличие от сопоставления регулярных выражений , re
вgrep
). Стандартным эквивалентом является grep -F
, хотя вы можете найти древние реализации grep
, такие как Solaris /bin/grep
, которые еще не поддерживают опцию -F
.
Я получил ответ
sed -i -e '/hello/{ w file2.txt' -e 'd;}' file1.txt
(перемещает совпадающие строки вfile2.txt
)
Или
grep "hello" file1.txt > file2.txt
(копирует совпадающие строки вfile2.txt
)