Skip to content

필사 모드: Linux grepコマンドの基礎

日本語
0%
정확도 0%
💡 왼쪽 원문을 읽으면서 오른쪽에 따라 써보세요. Tab 키로 힌트를 받을 수 있습니다.
원문 렌더가 준비되기 전까지 텍스트 가이드로 표시합니다.

Overview

Linuxには`grep`という便利なツールがあります。このツールをうまく活用すると、テキストファイルから有用な情報を抽出することができます。

grep document

$ grep -h

usage: grep [-abcdDEFGHhIiJLlMmnOopqRSsUVvwXxZz] [-A num] [-B num] [-C[num]]

[-e pattern] [-f file] [--binary-files=value] [--color=when]

[--context[=num]] [--directories=action] [--label] [--line-buffered]

[--null] [pattern] [file ...]

options

- `-A num` --after-context:マッチした行の後にnum行を追加表示

- `-B num` --before-context:マッチした行の前にnum行を追加表示

- `-C num` --context:マッチした行の前後num行を表示

- `-c` --count:マッチした結果の行数

- `-E pattern` --regexp=pattern:正規表現patternに一致する行を出力

- `-f file` --file=file:fileからpatternを読み込む

- `-r` --recursive:サブディレクトリを再帰的に検索

- `-n` --line-number:行番号を表示

- `-v pattern`:該当パターンにマッチする行を除外して出力

examples

以下のような`test.txt`ファイルがあると仮定します。

$ cat test.txt

apple is sweety

banana is long

apple mango

pitch is

water melon is expensive

grapes are cheep

pear

grep pattern -A num text

$ grep apple -A 2 test.txt

apple is sweety

banana is long

apple mango

pitch is

water melon is expensive

grep pattern -B num text

$ grep apple -B 1 test.txt

apple is sweety

banana is long

apple mango

grep pattern -C num text

$ grep apple -C 1 test.txt

apple is sweety

banana is long

apple mango

pitch is

grep pattern -c text

grep apple -c test.txt

2

grep -e pattern text

$ grep -e "ap" test.txt

apple is sweety

apple mango

grapes are cheep

grep -f file text

$ cat regex.txt

apple

$ grep -f regex.txt test.txt

apple is sweety

apple mango

grep -n pattern text

$ grep -n appl test.txt

1:apple is sweety

3:apple mango

grep -v pattern word

applを含む行を除外して出力します。

$ grep -v appl test.txt

banana is long

pitch is

water melon is expensive

grapes are cheep

pear

他のコマンドとの組み合わせ

with greater-than(リダイレクション)

grepの結果をoutに保存

$ grep -v appl test.txt > out.txt

$ cat out.txt

banana is long

pitch is

water melon is expensive

grapes are cheep

pear

with awk

最初の単語のみを出力

$ grep -v appl test.txt | awk '{print $1}'

banana

pitch

water

grapes

pear

with sort, uniq

最初の単語をソートして重複を除去

$ grep ap test.txt | awk '{print $1}' | sort | uniq

apple

grapes

正規表現についてもっと勉強したい、またはテストしたい場合は、[regexr.com](https://regexr.com/)で学習できます。

クイズ

Linuxの便利なテキスト検索コマンドラインツールであるgrepの基礎について学びます。

-A num --after-context:マッチした行の後にnum行を追加表示 -B num

--before-context:マッチした行の前にnum行を追加表示 -C num

--context:マッチした行の前後num行を表示 -c --count:マッチした結果の行数 -E pattern

--regexp=pattern:正規表現patternに一致する行を出力 -f file --file=file:fileからpatternを読み込む

-r --recursive:サブディレクトリを再帰的に検索 -n --line-number:行番号...

applを含む行を除外して出力します。 他のコマンドとの組み合わせ

最初の単語をソートして重複を除去

正規表現についてもっと勉強したい、またはテストしたい場合は、regexr.comで学習できます。

현재 단락 (1/89)

Linuxには`grep`という便利なツールがあります。このツールをうまく活用すると、テキストファイルから有用な情報を抽出することができます。

작성 글자: 0원문 글자: 2,315작성 단락: 0/89