web-dev-qa-db-ja.com

特定の単語を含む行を検索するターミナルコマンド?

テキストファイルを読み取り、特定のキーワードを含まないすべての行を削除して、それらの行を新しいファイルに出力するために、ターミナルにどのコマンドを入力する必要があるのか​​と思っていました。たとえば、キーワードは「システム」です。 systemを含むすべての行を新しい個別のファイルに印刷できるようにしたい。ありがとう

13
willykao

grepはあなたの友達です。

たとえば、次のことができます。

grep system <filename> > systemlines.out

man grepと追加の有用な情報も取得できます(例:行番号、1行前、1行後、否定-つまり、grepを含まないすべての行など)

Windowsを実行している場合は、 cygwin をインストールするか、grep用のwin32バイナリも検索できます。

23
Eric B.
grep '\<system\>'

Word systemを含み、systemを部分文字列として含まない行を検索します。

3

以下 grep コマンドは問題を解決します

grep -i yourword filename1 > filename2

with -i for case insensitiveness

without -i for case sensitiveness

urサーバーでgrepがどのように機能するかを確認するには、次のコマンドでurサーバーのmanページを参照してください。

man grep
3