Manpages

名 前

grep, egrep, fgrep − パ タ ー ン に マ ッ チ す る 行 を 表 示 す る

書 式

grep [OPTIONS] PATTERN [FILE...]
grep
[OPTIONS] [−e PATTERN | −f FILE] [FILE...]

説 明

grepFILE で 名 前 を 指 定 さ れ た フ ァ イ ル を 検 索 し て 、 与 え ら れ た PATTERN に マ ッ チ す る 部 分 を 含 む 行 を 探 し ま す 。 フ ァ イ ル が 指 定 さ れ て い な い 場 合 や 、 フ ァ イ ル 名 の 代 わ り に 1 個 の マ イ ナ ス 記 号 “” が 指 定 さ れ て い る 場 合 は 、 grep は 標 準 入 力 か ら 検 索 し ま す 。 デ フ ォ ル ト で は 、 grep は マ ッ チ し た 行 を 表 示 し ま す 。 さ ら に 、 兄 弟 プ ロ グ ラ ム egrepfgrep は 、 そ れ ぞ れ grep −Egrep −F と 同 じ で す 。 こ れ ら の 兄 弟 プ ロ グ ラ ム は 非 推 奨 で す が 、 後 方 互 換 性 の た め に 用 意 さ れ て い ま す 。

オ プ シ ョ ン

プ ロ グ ラ ム に つ い て の 一 般 情 報

−−help 使 用 法 を 出 力 し て 終 了 し ま す 。

−V, −−version

grep の バ ー ジ ョ ン 番 号 を 出 力 し て 終 了 し ま す 。 正 規 表 現 の 選 択

−E, −−extended−regexp

PATTERN を 拡 張 正 規 表 現 (ERE) と し て 扱 い ま す (下 記 参 照 )。

−F, −−fixed−strings

PATTERN を 改 行 で 区 切 ら れ た 固 定 文 字 列 (正 規 表 現 の か わ り に ) の リ ス ト と し て 扱 い 、 そ の 文 字 列 の い ず れ か と マ ッ チ す る か ど う か を 調 べ ま す 。

−G, −−basic−regexp

PATTERN を 基 本 正 規 表 現 (BRE) と し て 扱 い ま す (下 記 参 照 )。 こ れ が デ フ ォ ル ト で す 。

−P, −−perl−regexp パ タ ー ン を Perl 互 換 の 正 規 表 現 (PCRE) と し て 扱 い ま す 。 き わ め て 実 験 的 な も の な の で 、 grep −P を 使 う と 、 そ の 機 能 は 実 装 さ れ て い ま せ ん と い う 警 告 が 出 る か も し れ ま せ ん 。 マ ッ チ ン グ の 制 御
−e
PATTERN, −−regexp=PATTERN

PATTERN を パ タ ー ン と し て 指 定 し ま す 。 こ の オ プ シ ョ ン を 複 数 回 使 っ た と き や 、 −f (−−file) オ プ シ ョ ン と 組 み 合 わ せ た と き は 、 与 え ら れ た す べ て の パ タ ー ン を 検 索 し ま す 。 こ の オ プ シ ョ ン は 、 ハ イ フ ン “−” で 始 ま る パ タ ー ン を 保 護 す る の に も 使 え ま す 。

−f FILE, −−file=FILE パ タ ー ン を FILE か ら 1 行 1 パ タ ー ン と し て 読 み 込 み ま す 。 こ の オ プ シ ョ ン を 複 数 回 使 っ た と き や 、 −e (−−regexp) オ プ シ ョ ン と 組 み 合 わ せ た と き は 、 与 え ら れ た す べ て の パ タ ー ン を 検 索 し ま す 。 空 の フ ァ イ ル は パ タ ー ン を 含 ま な い の で 、 何 に も マ ッ チ し ま せ ん 。
−i
, −−ignore−case

PATTERN と 入 力 フ ァ イ ル の 双 方 で 、 ア ル フ ァ ベ ッ ト の 大 文 字 と 小 文 字 を 区 別 し な い よ う に し ま す 。

−v, −−invert−match マ ッ チ の 意 味 を 逆 に し て 、 マ ッ チ し な い 行 を 抜 き 出 し て 表 示 し ま す 。
−w
, −−word−regexp マ ッ チ す る 部 分 が 完 全 な 単 語 を 形 成 す る と き に の み 、 そ の 行 を 選 択 し ま す 。 次 の 条 件 を 検 査 し ま す 。 パ タ ー ン に マ ッ チ す る 部 分 文 字 列 は 、 行 頭 に あ る か 、 さ も な け れ ば 、 単 語 構 成 文 字 以 外 の 文 字 の 直 後 に な け れ ば な ら な い 。 ま た 、 そ の 部 分 文 字 列 は 、 行 末 に あ る か 、 さ も な け れ ば 、 単 語 構 成 文 字 以 外 の 文 字 の 直 前 に な け れ ば な ら な い (訳 注 : こ こ で 「 完 全 な 単 語 を 形 成 す る 」 と い う の は 、 そ れ が 空 白 、 改 行 、 引 用 符 、 句 読 点 な ど で 前 後 を 区 切 ら れ た 文 字 列 だ と い う こ と で す 。 た と え ば 、 文 字 列 「 A word with you」 中 の word と い う 部 分 文 字 列 は 完 全 な 単 語 で す が 、 文 字 列 「 two words」 中 の 部 分 文 字 列 word は 完 全 な 単 語 を 形 成 し ま せ ん )。 単 語 構 成 文 字 と は 、 ア ル フ ァ ベ ッ ト 、 数 字 、 ア ン ダ ス コ ア で す (訳 注 : 実 は 漢 字 や 仮 名 も 単 語 構 成 文 字 と し て 扱 わ れ ま す )。 こ の オ プ シ ョ ン は 、 −x が 同 時 に 指 定 さ れ た と き に は 無 効 に な り ま す 。
−x
, −−line−regexp パ タ ー ン が 行 全 体 と ぴ っ た り マ ッ チ し た と き に の み 、 そ の 行 を 選 択 し ま す 。 正 規 表 現 で い う と 、 こ れ は パ タ ー ン を 括 弧 で 囲 み 、 前 後 に ^$ を 付 け る よ う な も の で す 。

−y

−i と 同 じ 意 味 を 持 つ 旧 式 の オ プ シ ョ ン で す 。

一 般 的 な 出 力 の 制 御

−c, −−count 通 常 の 出 力 は せ ず 、 各 入 力 フ ァ イ ル に つ い て マ ッ チ し た 行 数 を 表 示 し ま す 。 −v, −−invert-match オ プ シ ョ ン (上 記 参 照 ) と 共 に 指 定 し た 場 合 は 、 マ ッ チ し な か っ た 行 数 を 表 示 し ま す 。
−−color
[=WHEN], −−colour[=WHEN] マ ッ チ し た (空 文 字 列 で は な い ) 文 字 列 、 マ ッ チ す る 行 、 前 後 の 文 脈 行 、 フ ァ イ ル 名 、 行 番 号 、 バ イ ト オ フ セ ッ ト 、 (フ ィ ー ル ド や 、 前 後 の 文 脈 行 を 含 む グ ル ー プ 同 士 の ) 区 切 り 記 号 を エ ス ケ ー プ ・ シ ー ケ ン ス で 囲 み 、 タ ー ミ ナ ル 上 に 色 付 き で 表 示 し ま す 。 ど の 色 を 使 う か は 、 環 境 変 数 GREP_COLORS で 定 義 し ま す 。 非 推 奨 の 環 境 変 数 GREP_COLOR も 、 こ れ ま で ど お り 使 用 で き ま す が 、 そ の 設 定 は 優 先 さ れ ま せ ん 。 WHENnever, always, auto の い づ れ か で す 。
−L
, −−files−without−match 通 常 の 出 力 は し ま せ ん 。 そ の 代 わ り に 、 grep を 普 通 に 実 行 し た 際 に 、 何 の 検 索 結 果 も 表 示 し な い よ う な 入 力 フ ァ イ ル の 名 前 を 列 挙 し ま す (訳 注 : す な わ ち 、 −L オ プ シ ョ ン を 指 定 す る と 、 −v オ プ シ ョ ン を 同 時 に 指 定 し な い 場 合 は 、 パ タ ー ン に マ ッ チ す る 文 字 列 を 含 む 行 が ま っ た く 存 在 し な い フ ァ イ ル の 名 前 を 列 挙 す る と い う こ と で す )。 個 々 の フ ァ イ ル に 対 す る 走 査 は 、 最 初 の マ ッ チ で 終 了 し ま す 。
−l
, −−files−with−matches 通 常 の 出 力 は し ま せ ん 。 そ の 代 わ り に 、 grep を 普 通 に 実 行 し た 際 に 、 何 ら か の 検 索 結 果 を 表 示 す る よ う な 入 力 フ ァ イ ル の 名 前 を 列 挙 し ま す (訳 注 : す な わ ち 、 −l オ プ シ ョ ン を 指 定 す る と 、 −v オ プ シ ョ ン を 同 時 に 指 定 し な い 場 合 は 、 パ タ ー ン に マ ッ チ す る 文 字 列 を 含 む 行 が 存 在 す る フ ァ イ ル の 名 前 を 列 挙 す る と い う こ と で す )。 個 々 の フ ァ イ ル に 対 す る 走 査 は 、 最 初 の マ ッ チ で 終 了 し ま す 。
−m
NUM, −−max−count=NUM マ ッ チ し た 行 数 が NUM に 達 し た ら 、 フ ァ イ ル の 読 み 込 み を 中 止 し ま す 。 入 力 が 通 常 フ ァ イ ル か ら 標 準 入 力 を 介 し て 行 わ れ て い る 場 合 は 、 マ ッ チ し た 行 を NUM 行 出 力 し た 時 点 で 、 grep は 標 準 入 力 の 読 み 出 し 位 置 を 最 後 に マ ッ チ し た 行 の 直 後 に 来 る よ う に し て か ら 、 終 了 し ま す 。 続 い て 表 示 す る 文 脈 行 が あ る 場 合 で も 、 こ の 動 作 は 変 わ り ま せ ん 。 こ の こ と は 、 grep を 呼 び 出 す プ ロ セ ス が 、 中 止 し た と こ ろ か ら 検 索 を 再 開 す る こ と を 可 能 に し ま す 。 grep は マ ッ チ し た 行 数 が NUM に 達 し て ス ト ッ プ し た と き 、 そ れ に 続 く 文 脈 行 が あ れ ば 、 そ れ を 出 力 し ま す 。 −c−−count オ プ シ ョ ン を 同 時 に 使 用 し た 場 合 、 grepNUM よ り も 大 き い 数 を 出 力 し ま せ ん 。 −v−−invert−match を 同 時 に 使 用 し た 場 合 は 、 マ ッ チ し な い 行 を NUM 行 出 力 し た と こ ろ で 、 grep は ス ト ッ プ し ま す 。
−o
, −−only−matching マ ッ チ す る 行 の マ ッ チ し た 部 分 だ け を (そ れ が 空 文 字 列 で な け れ ば ) 表 示 し ま す 。 マ ッ チ し た 各 文 字 列 は 、 そ れ ぞ れ 別 の 行 に 書 き 出 し ま す 。
−q
, −−quiet, −−silent 沈 黙 モ ー ド で す 。 標 準 出 力 に 何 も 書 き 出 し ま せ ん 。 マ ッ チ す る も の が 1 つ で も 見 つ か る と 、 エ ラ ー を 検 出 し て い た 場 合 で も 、 終 了 ス テ ー タ ス 0 で 即 座 に 終 了 し ま す 。 −s−−no−messages オ プ シ ョ ン も 参 照 し て く だ さ い 。
−s
, −−no−messages フ ァ イ ル が 存 在 し な い こ と や 読 み 込 み め な い こ と を 示 す エ ラ ー メ ッ セ ー ジ を 抑 止 し ま す 。 出 力 す る 行 の 前 に 付 け る 情 報 の 制 御
−b
, −−byte−offset 出 力 す る 各 行 の 前 に 、 そ の 入 力 フ ァ イ ル 内 で の 0 か ら 始 ま る バ イ ト 単 位 の オ フ セ ッ ト を 表 示 し ま す 。 −o (−−only−matching) も 指 定 さ れ て い る と き は 、 マ ッ チ す る 部 分 そ の も の の オ フ セ ッ ト を 示 し ま す 。
−H
, −−with−filename 各 々 の マ ッ チ に 対 し て そ の フ ァ イ ル 名 を 表 示 し ま す 。 検 索 す る フ ァ イ ル が 2 個 以 上 の 場 合 は 、 こ れ が デ フ ォ ル ト の 動 作 で す 。
−h
, −−no−filename 出 力 す る 行 の 前 に フ ァ イ ル 名 を 付 け な い よ う に し ま す 。 検 索 す る フ ァ イ ル が 1 つ し か な い (あ る い は 、 標 準 入 力 だ け だ っ た ) 場 合 は 、 こ れ が デ フ ォ ル ト の 動 作 で す 。
−−label=
LABEL 実 際 に は 標 準 入 力 か ら 来 た 入 力 を LABEL と い う フ ァ イ ル か ら 来 た も の の よ う に 見 せ か け ま す 。 こ れ は zgrep の よ う な ツ ー ル を 自 分 で 作 成 す る 際 に と り わ け 便 利 で す 。 た と え ば 、 gzip -cd foo.gz | grep --label=foo -H something と い っ た 具 合 で す 。 −H オ プ シ ョ ン も 参 照 し て く だ さ い 。
−n
, −−line−number 各 出 力 行 の 前 に 、 そ の 入 力 フ ァ イ ル 内 で の 1 か ら 始 ま る 行 番 号 を 表 示 し ま す 。
−T
, −−initial−tab 行 の 実 際 の 内 容 を な す 最 初 の 文 字 が 、 必 ず タ ブ ・ ス ト ッ プ の 位 置 に 来 る よ う に し ま す 。 そ の 結 果 、 タ ブ が き ち ん と 揃 っ て 見 え る よ う に な り ま す 。 こ の オ プ シ ョ ン は −H,−n,−b と い っ た 、 実 際 の 内 容 の 前 に 情 報 を 付 加 す る オ プ シ ョ ン を 使 う と き に 役 に 立 ち ま す 。 ま た 、 こ の オ プ シ ョ ン は 、 1 つ の フ ァ イ ル か ら 抜 き 出 し た 行 の 先 頭 が で き る だ け 揃 う よ う に 、 行 番 号 や バ イ ト オ フ セ ッ ト が あ る 場 合 は 、 そ の フ ィ ー ル ド 幅 を 必 要 最 小 の サ イ ズ に し て 表 示 し ま す 。
−u
, −−unix−byte−offsets

Unix 形 式 の バ イ ト オ フ セ ッ ト を 報 告 し ま す 。 こ の ス イ ッ チ を 使 う と 、 grep は 、 検 索 対 象 の フ ァ イ ル が Unix 形 式 の テ キ ス ト フ ァ イ ル で あ る か の よ う に 、 バ イ ト オ フ セ ッ ト を 報 告 し ま す 。 す な わ ち 、 CR 文 字 を 切 り 捨 て る の で す 。 そ の た め 、 表 示 さ れ る 結 果 は 、 Unix マ シ ン で grep を 実 行 し た と き と 同 じ も の に な り ま す 。 こ の オ プ シ ョ ン は 、 −b オ プ シ ョ ン を 同 時 に 使 用 し な い か ぎ り 、 効 果 が あ り ま せ ん 。 ま た 、 こ の オ プ シ ョ ン は 、 MS-DOSMS -Windows 以 外 の プ ラ ッ ト ホ ー ム で は 、 何 の 効 果 も あ り ま せ ん 。

−Z, −−null フ ァ イ ル 名 に 続 い て 通 常 出 力 さ れ る 文 字 の 代 わ り に 、 値 が 0 の 1 バ イ ト ( ASCII NUL 文 字 ) を 出 力 し ま す 。 た と え ば 、 grep −lZ は 、 い つ も の 改 行 (newline) で は な く 、 値 が 0 の 1 バ イ ト を 各 フ ァ イ ル 名 の 後 ろ に 出 力 す る の で す 。 こ の オ プ シ ョ ン は 、 改 行 の よ う な 変 わ っ た 文 字 を 含 む フ ァ イ ル 名 が あ る と き で も 、 出 力 の 曖 昧 さ を な く し て く れ ま す 。 こ の オ プ シ ョ ン を find −print0, perl −0, sort −z, xargs −0 な ど の コ マ ン ド と 組 み 合 わ せ て 使 う と 、 行 儀 の 悪 い フ ァ イ ル 名 も 処 理 す る こ と が で き ま す 。 フ ァ イ ル 名 が 改 行 文 字 を 含 ん で い て も 処 理 で き る の で す 。 前 後 の 文 脈 行 の 制 御
−A
NUM, −−after−context=NUM

NUM で 指 定 し た 行 数 だ け 、 パ タ ー ン に マ ッ チ し た 行 の 後 に 続 く 文 脈 も 表 示 し ま す 。 マ ッ チ し た 行 を 含 む グ ル ー プ 同 士 の 間 に は 、 グ ル ー プ を 区 切 る 印 (−−) か ら な る 行 を 置 き ま す 。 −o−−only−matching と 同 時 に 使 う と 、 こ の オ プ シ ョ ン は 効 果 が な く 、 警 告 メ ッ セ ー ジ を 出 し ま す 。

−B NUM, −−before−context=NUM

NUM で 指 定 し た 行 数 だ け 、 パ タ ー ン に マ ッ チ し た 行 に 先 行 す る 文 脈 も 表 示 し ま す 。 マ ッ チ し た 行 を 含 む グ ル ー プ 同 士 の 間 に は 、 グ ル ー プ を 区 切 る 印 (−−) か ら な る 行 を 置 き ま す 。 −o−−only−matching と 同 時 に 使 う と 、 こ の オ プ シ ョ ン は 効 果 が な く 、 警 告 メ ッ セ ー ジ を 出 し ま す 。

−C NUM, NUM, −−context=NUM

NUM で 指 定 し た 行 数 だ け 、 パ タ ー ン に マ ッ チ し た 行 の 前 後 の 文 脈 も 表 示 し ま す 。 マ ッ チ し た 行 を 含 む グ ル ー プ 同 士 の 間 に は 、 グ ル ー プ を 区 切 る 印 (−−) か ら な る 行 を 置 き ま す 。 −o−−only−matching と 同 時 に 使 う と 、 こ の オ プ シ ョ ン は 効 果 が な く 、 警 告 メ ッ セ ー ジ を 出 し ま す 。 フ ァ イ ル や デ ィ レ ク ト リ の 選 択

−a, −−text バ イ ナ リ フ ァ イ ル を テ キ ス ト フ ァ イ ル で あ る か の よ う に 処 理 し ま す 。 こ れ は −−binary-files=text オ プ シ ョ ン と 等 価 で す 。
−−binary−files=
TYPE フ ァ イ ル の デ ー タ や メ タ デ ー タ が 、 フ ァ イ ル に バ イ ナ リ デ ー タ が 含 ま れ て い る こ と を 示 す 場 合 に 、 フ ァ イ ル の タ イ プ を TYPE だ と 見 な し ま す 。 テ キ ス ト で は な い バ イ ト が 見 つ か れ ば 、 バ イ ナ リ デ ー タ で す 。 テ キ ス ト で は な い バ イ ト が 、 現 在 使 用 し て い る ロ ケ ー ル に 不 適 切 に エ ン コ ー ド し て 出 力 さ れ た バ イ ト や 、 −z オ プ シ ョ ン が 指 定 さ れ て い な い と き の 入 力 中 の ヌ ル バ イ ト だ と い う こ と も あ り ま す 。 デ フ ォ ル ト で は TYPEbinary で あ り 、 grep は フ ァ イ ル が バ イ ナ リ だ と わ か る と 、 そ の 先 の 出 力 を 抑 制 し ま す 。 そ の か わ り に バ イ ナ リ フ ァ イ ル に マ ッ チ し た と い う 1 行 の メ ッ セ ー ジ を 表 示 し ま す 。 マ ッ チ す る 部 分 が な い 場 合 に は 何 も 表 示 し ま せ ん 。

TYPEwithout-match の 場 合 、 grep は フ ァ イ ル が バ イ ナ リ だ と わ か る と 、 残 り は マ ッ チ し な い も の と 仮 定 し ま す 。 こ れ は −I オ プ シ ョ ン と 等 価 で す 。

TYPEtext の 場 合 、 grep は バ イ ナ リ フ ァ イ ル を テ キ ス ト で あ る か の よ う に 扱 い ま す 。 こ れ は −a オ プ シ ョ ン と 等 価 で す 。

typebinary の 場 合 、 grep−z が な く て も テ キ ス ト 以 外 の 文 字 を 行 の 区 切 り と し て 扱 う 場 合 が あ り ま す 。 こ れ は 、 binary を 選 ぶ か text を 選 ぶ か に よ っ て 、 パ タ ー ン が フ ァ イ ル に マ ッ チ す る か ど う か に 影 響 が あ る こ と を 意 味 し ま す 。 た と え ば 、 typebinary の 場 合 は q$ と い う パ タ ー ン が q の 直 後 に NULL 文 字 が 続 く 箇 所 に マ ッ チ す る 可 能 性 が あ る の に 対 し 、 typetext の 場 合 に は マ ッ チ し ま せ ん 。 逆 に 、 typebinary の 場 合 、 . (period) と い う パ タ ー ン は NULL 文 字 に は マ ッ チ し な い か も し れ ま せ ん 。 警 告 : −a オ プ シ ョ ン は バ イ ナ リ の ゴ ミ を 出 力 す る か も し れ ま せ ん 。 出 力 先 が 端 末 で あ り 、 し か も 端 末 ド ラ イ バ が ゴ ミ の 一 部 を コ マ ン ド だ と 解 釈 す る 場 合 に は 、 こ の ゴ ミ が 厄 介 な 副 作 用 を 起 こ す 可 能 性 が あ り ま す 。 一 方 、 テ キ ス ト の エ ン コ ー デ ィ ン グ が 不 明 な フ ァ イ ル を 読 み 込 む と き 、 マ ッ チ し た 結 果 を そ の ま ま 表 示 す る の が 安 全 で な く て も 、 よ り 多 く の マ ッ チ を 探 す た め に 、 −a を 指 定 す る か 、 環 境 変 数 で LC_ALL=’C’ を 指 定 す る の が 役 に 立 つ 場 合 が あ り ま す 。

−D ACTION, −−devices=ACTION 入 力 フ ァ イ ル が デ バ イ ス 、 FIFO、 ソ ケ ッ ト の い づ れ か で あ る 場 合 に 、 ACTION を 使 っ て そ の 処 理 を 行 い ま す 。 デ フ ォ ル ト の ACTIONread で す 。 す な わ ち 、 デ バ イ ス な ど を 、 そ れ が 普 通 の フ ァ イ ル で あ る か の よ う に 、 読 み 込 み ま す 。 ACTIONskip な ら ば 、 デ バ イ ス な ど を 黙 っ て ス キ ッ プ し ま す 。
−d
ACTION, −−directories=ACTION 入 力 フ ァ イ ル が デ ィ レ ク ト リ の 場 合 に 、 ACTION を 使 っ て そ の 処 理 を 行 い ま す 。 デ フ ォ ル ト の ACTIONread で す 。 す な わ ち 、 デ ィ レ ク ト リ を 、 そ れ が 普 通 の フ ァ イ ル で あ る か の よ う に 、 読 み 込 み ま す 。 ACTIONskip な ら ば 、 デ ィ レ ク ト リ を 黙 っ て ス キ ッ プ し ま す 。 ACTIONrecurse な ら 、 grep は 各 デ ィ レ ク ト リ の 下 に あ る す べ て の フ ァ イ ル を 再 帰 的 に 読 み 込 み ま す 。 た だ し 、 シ ン ボ リ ッ ク リ ン ク は コ マ ン ド ラ イ ン で 指 定 さ れ た と き に の み た ど り ま す 。 こ れ は −r オ プ シ ョ ン と 等 価 で す 。
−−exclude=
GLOB コ マ ン ド ラ イ ン で 指 定 さ れ て い る フ ァ イ ル に つ い て は 、 そ の 名 前 の 尾 部 が 、 ワ イ ル ド カ ー ド に よ る マ ッ チ ン グ で パ タ ー ン GLOB に マ ッ チ す る フ ァ イ ル を ス キ ッ プ し ま す 。 こ こ で 言 う 「 名 前 の 尾 部 」 と は 、 フ ァ イ ル 名 の 全 体 か 、 / の 直 後 に 始 ま り / 以 外 の 文 字 で 終 る フ ァ イ ル 名 の 最 後 の 部 分 の こ と で す 。 ま た 、 デ ィ レ ク ト リ を 再 帰 検 索 し て い る と き に 出 会 う フ ァ イ ル に つ い て は 、 ベ ー ス ネ ー ム が GLOB に マ ッ チ す る フ ァ イ ル を ス キ ッ プ し ま す 。 ベ ー ス ネ ー ム と は 最 後 の / よ り 後 の 部 分 で す 。 パ タ ー ン に は 、 *, ?, [...] が ワ イ ル ド カ ー ド と し て 使 え ま す 。 \ を 文 字 の 前 に 置 け ば 、 ワ イ ル ド カ ー ド 文 字 や バ ッ ク ス ラ ッ シ ュ 文 字 を 本 来 の 意 味 で 使 用 で き ま す 。
−−exclude-from=
FILE フ ァ イ ル FILE を 読 み 込 み 、 そ こ に 書 か れ て い る フ ァ イ ル 名 (ワ イ ル ド カ ー ド 可 ) の ど れ か に ベ ー ス ネ ー ム が マ ッ チ す る フ ァ イ ル を ス キ ッ プ し ま す (−−exclude の 項 で 説 明 し た ワ イ ル ド カ ー ド の マ ッ チ ン グ を 使 用 し ま す )。
−−exclude-dir=
GLOB コ マ ン ド ラ イ ン で 指 定 さ れ て い る デ ィ レ ク ト リ の う ち 、 名 前 の 尾 部 が パ タ ー ン GLOB に マ ッ チ す る デ ィ レ ク ト リ を ス キ ッ プ し ま す 。 ま た 、 デ ィ レ ク ト リ を 再 帰 検 索 し て い る と き に 出 会 う サ ブ デ ィ レ ク ト リ に つ い て は 、 ベ ー ス ネ ー ム が GLOB に マ ッ チ す る サ ブ デ ィ レ ク ト リ を ス キ ッ プ し ま す 。 GLOB 末 尾 の 余 分 な ス ラ ッ シ ュ は 無 視 さ れ ま す 。

−I バ イ ナ リ フ ァ イ ル を マ ッ チ す る デ ー タ を 含 ん で い な い も の と し て 処 理 し ま す 。 こ れ は

−−binary−files=without-match オ プ シ ョ ン と 等 価 で す 。
−−include=
GLOB ベ ー ス ネ ー ム が GLOB に マ ッ チ す る フ ァ イ ル の み を 検 索 し ま す (−−exclude の 項 で 説 明 し た ワ イ ル ド カ ー ド の マ ッ チ ン グ を 使 用 し ま す )。
−r
, −−recursive 各 デ ィ レ ク ト リ の 下 に あ る す べ て の フ ァ イ ル を 再 帰 的 に 読 み 込 み ま す 。 た だ し 、 シ ン ボ リ ッ ク リ ン ク は コ マ ン ド ラ イ ン で 指 定 さ れ た と き に の み た ど り ま す 。 検 索 対 象 の フ ァ イ ル が 指 定 さ れ な か っ た 場 合 に は grep は 現 在 の デ ィ レ ク ト リ を 探 す こ と に 注 意 し て く だ さ い 。 こ れ は −d recurse オ プ シ ョ ン と 等 価 で す 。
−R
, −−dereference−recursive 各 デ ィ レ ク ト リ の 下 に あ る す べ て の フ ァ イ ル を 再 帰 的 に 読 み 込 み ま す 。 −r と 異 な り 、 す べ て の シ ン ボ リ ッ ク リ ン ク を 追 跡 し ま す 。 そ の 他 の オ プ シ ョ ン
−−line−buffered
行 ご と に 出 力 を 行 い ま す 。 実 行 速 度 が 落 ち る か も し れ ま せ ん 。
−U
, −−binary フ ァ イ ル を バ イ ナ リ と し て 扱 い ま す 。 MS-DOS や MS-Windows の 環 境 下 で 、 grep は デ フ ォ ル ト で は 、 フ ァ イ ル が テ キ ス ト か バ イ ナ リ か を −−binary−files オ プ シ ョ ン で 記 述 さ れ た 方 法 で 推 測 し ま す 。 grep は フ ァ イ ル を テ キ ス ト フ ァ イ ル と 判 断 し た 場 合 、 オ リ ジ ナ ル の フ ァ イ ル 内 容 か ら (^$ を 使 っ た 正 規 表 現 が 正 し く 動 作 す る よ う に ) CR 文 字 を 取 り 除 き ま す 。 −U を 指 定 す る と 、 こ の 推 測 を 抑 制 し 、 す べ て の フ ァ イ ル を 読 み 取 っ て 、 そ の ま ま 手 を 加 え ず に マ ッ チ 処 理 へ 渡 す の で す 。 も し フ ァ イ ル が 各 行 の 末 尾 に CR/LF の 組 み 合 わ せ を 持 つ テ キ ス ト フ ァ イ ル な ら 、 こ の オ プ シ ョ ン の せ い で 正 規 表 現 が う ま く 働 か な い こ と が あ る か も し れ ま せ ん 。 こ の オ プ シ ョ ン は MS-DOS や MS-Windows 以 外 の プ ラ ッ ト フ ォ ー ム で は 効 果 が あ り ま せ ん 。
−z
, −−null−data 入 力 と 出 力 の デ ー タ を 、 改 行 の か わ り に 、 値 が 0 の バ イ ト (ASCII NULL 文 字 ) で 区 切 ら れ た 一 連 の 行 と し て 扱 い ま す 。 −Z−−null と 同 様 、 こ の オ プ シ ョ ン は sort -z な ど の コ マ ン ド と 組 み 合 わ せ て 、 行 儀 の 悪 い フ ァ イ ル 名 の 処 理 に 使 用 す る こ と が で き ま す 。

正 規 表 現

正 規 表 現 と は 、 一 群 の 文 字 列 を 一 ま と め に し て 表 現 す る パ タ ー ン の こ と で す 。 正 規 表 現 の 構 成 方 法 は 、 数 式 に よ く 似 て い ま す 。 す な わ ち 、 さ ま ざ ま な 演 算 子 を 使 い 、 小 さ な 表 現 を 組 み 合 わ せ て 構 成 す る の で す 。

grep は 、 「 基 本 」 正 規 表 現 (BRE)、 「 拡 張 」 正 規 表 現 (ERE)、 「 Perl の 」 正 規 表 現 (PCRE) と い う 3 種 類 の 正 規 表 現 文 法 を 扱 う こ と が で き ま す 。 GNU  grep で は 、 「 基 本 」 と 「 拡 張 」 の 文 法 の 間 で 、 利 用 で き る 機 能 に 違 い は あ り ま せ ん 。 他 の 実 装 で は 、 基 本 正 規 表 現 は 拡 張 正 規 表 現 ほ ど 強 力 で は な い も の で す 。 こ こ で は 、 拡 張 正 規 表 現 に つ い て 説 明 し 、 基 本 正 規 表 現 と の 相 違 に つ い て は 、 後 で 簡 単 に ま と め る こ と に し ま す 。 な お 、 Perl 互 換 の 正 規 表 現 に は よ り 多 く の 機 能 が あ り 、 pcresyntax(3)pcrepattern(3) で 詳 細 に 解 説 さ れ て い ま す が 、 PCRE が 用 意 さ れ て い る シ ス テ ム で し か 利 用 で き ま せ ん 。 正 規 表 現 を 構 成 す る 基 本 単 位 は 、 1 文 字 に マ ッ チ す る 正 規 表 現 で す 。 ア ル フ ァ ベ ッ ト や 数 字 を 含 む ほ と ん ど の 文 字 が 、 自 分 自 身 に マ ッ チ す る 正 規 表 現 で す 。 ま た 、 特 殊 な 意 味 を 持 つ メ タ 文 字 も 、 そ の 文 字 の 前 に バ ッ ク ス ラ ッ シ ュ を 付 け る と 、 そ の 本 来 の 文 字 に マ ッ チ す る よ う に な り ま す 。 ピ リ オ ド . は 、 任 意 の 1 文 字 に マ ッ チ し ま す 。 文 字 ク ラ ス と 角 括 弧 式 (ブ ラ ケ ッ ト 式 ) 角 括 弧 式 と は 、 [] で 囲 ま れ た 文 字 の リ ス ト の こ と で す 。 角 括 弧 式 は 、 リ ス ト 中 の 任 意 の 1 文 字 に マ ッ チ し ま す 。 ま た 、 リ ス ト の 最 初 の 文 字 が キ ャ レ ッ ト ^ の 場 合 は 、 リ ス ト 中 の 文 字 以 外 の 任 意 の 1 文 字 に マ ッ チ し ま す 。 た と え ば 、 正 規 表 現 [0123456789] は 任 意 の 数 字 1 個 に マ ッ チ す る わ け で す 。 角 括 弧 式 の 内 側 に 範 囲 式 を 置 く こ と が で き ま す が 、 こ れ は ハ イ フ ン で 区 切 ら れ た 2 つ の 文 字 か ら な っ て い ま す 。 範 囲 式 は 、 現 在 使 用 中 の ロ ケ ー ル に お け る 照 合 順 序 と 文 字 集 合 を 使 っ た と き に 、 そ の 2 文 字 の 間 に 並 ぶ 、 そ の 2 文 字 を 含 む 任 意 の 1 文 字 に マ ッ チ し ま す 。 た と え ば 、 デ フ ォ ル ト の C ロ ケ ー ル で は 、 [a−d][abcd] と 等 価 で す 。 多 く の ロ ケ ー ル で は 文 字 を 辞 書 式 の 順 序 で 並 べ て い ま す が 、 そ う し た ロ ケ ー ル で [a−d][abcd] と 等 価 で な い こ と も よ く あ り ま す 。 た と え ば 、 [aBbCcDd] と 等 価 か も し れ な い の で す 。 角 括 弧 式 を 伝 統 的 な 意 味 に 解 釈 さ せ た い な ら 、 環 境 変 数 LC_ALL の 値 を C に 設 定 し て 、 C ロ ケ ー ル を 使 用 す る と よ い で し ょ う 。 最 後 に 、 角 括 弧 式 内 で 使 え る よ う に 、 特 定 の 名 前 を 持 つ 文 字 ク ラ ス が あ ら か じ め 定 義 さ れ て い ま す 。 名 前 が 内 容 を 示 し て お り 、 そ れ は 次 の よ う な も の で す 。 [:alnum:], [:alpha:], [:cntrl:], [:digit:], [:graph:], [:lower:], [:print:], [:punct:], [:space:], [:upper:], [:xdigit:]。 た と え ば 、 [[:alnum:]] は 現 在 の ロ ケ ー ル の 文 字 ク ラ ス で 数 字 と 文 字 を 意 味 し ま す 。 C ロ ケ ー ル や ASCII 文 字 集 合 の エ ン コ ー デ ィ ン グ の 場 合 、 こ れ は [0−9A−Za−z] と 同 じ で す 。 (こ う し た ク ラ ス 名 に 使 用 さ れ て い る 角 括 弧 は 、 シ ン ボ ル 名 の 一 部 な の で 、 角 括 弧 式 の 前 後 に 付 く 角 括 弧 と は 別 に 指 定 す る 必 要 が あ る こ と に 注 意 し て く だ さ い 。 ) 角 括 弧 式 の 内 側 で は 、 ほ と ん ど の メ タ 文 字 が そ の 特 別 な 意 味 を 持 た な く な り ま す 。 ] と い う 記 号 そ の も の を 角 括 弧 式 に 含 め る に は 、 そ れ を リ ス ト の 先 頭 に 置 い て く だ さ い 。 同 様 に 、 ^ と い う 記 号 そ の も の を 含 め る に は 、 そ れ を 先 頭 以 外 の ど こ か に 置 け ば よ い で し ょ う 。 最 後 に 、 そ の も の を 含 め る に は 、 そ れ を リ ス ト の 最 後 に 置 き ま す 。 行 頭 と 行 末 (ア ン カ リ ン グ ) キ ャ レ ッ ト ^ と ド ル 記 号 $ は 、 そ れ ぞ れ 行 頭 と 行 末 の 空 文 字 列 に マ ッ チ す る メ タ 文 字 で す 。 バ ッ ク ス ラ ッ シ ュ 付 き の 特 別 な 表 現 シ ン ボ ル \< と シ ン ボ ル \> は 、 そ れ ぞ れ 単 語 の 先 頭 と 末 尾 の 空 文 字 列 に マ ッ チ す る メ タ 文 字 で す 。 シ ン ボ ル \b は 単 語 の 端 の 空 文 字 列 に マ ッ チ し ま す 。 シ ン ボ ル \B は 単 語 の 端 以 外 の 空 文 字 列 に マ ッ チ し ま す 。 シ ン ボ ル \w[_[:alnum:]] と 同 じ 意 味 で 、 シ ン ボ ル \W[^_[:alnum:]]. と 同 じ 意 味 で す 。 繰 り 返 し 正 規 表 現 の 後 に は 、 繰 り 返 し 演 算 子 の ど れ か が 続 く こ と が あ り ま す 。

? 直 前 の 項 目 が あ っ て も な く て も よ く 、 マ ッ チ す る と し て も

1 回 だ け と

い う こ と 。

* 直 前 の 項 目 が

0 回 以 上 マ ッ チ す る と い う こ と 。

+ 直 前 の 項 目 が

1 回 以 上 マ ッ チ す る と い う こ と 。

{n} 直 前 の 項 目 が ち

ょ う ど n 回 マ ッ チ す る と い う こ と 。
{
n,} 直 前 の 項 目 が n 回 以 上 マ ッ チ す る と い う こ と 。
{,
m} 直 前 の 項 目 が m 回 以 下 マ ッ チ す る と い う こ と 。 こ れ は GNU 拡 張 で

す 。

{n,m} 直 前 の 項 目 が

n 回 以 上 m 回 以 下 マ ッ チ す る と い う こ と 。

結 合

2 つ の 正 規 表 現 は 結 合 す る こ と が で き ま す 。 結 果 と し て で き あ が る 正 規 表 現 は 、 結 合 対 象 と な る 部 分 表 現 に そ れ ぞ れ マ ッ チ す る 2 つ の 部 分 文 字 列 を 結 合 し て 作 ら れ る 、 ど ん な 文 字 列 に も マ ッ チ し ま す 。 選 択
2 つ の 正 規 表 現 は 中 置 き 型 演 算 子 の | で 繋 ぐ こ と が で き ま す 。 結 果 と し て で き あ が る 正 規 表 現 は 、 ど ち ら か の 部 分 表 現 に マ ッ チ す る ど ん な 文 字 列 に も マ ッ チ し ま す 。 優 先 順 位 繰 り 返 し は 結 合 に 優 先 し ま す 。 ま た 結 合 は 選 択 に 優 先 し ま す 。 表 現 の 1 つ の ま と ま り を 括 弧 で く く る と 、 そ の 内 側 の 式 を こ う し た 優 先 規 則 よ り さ ら に 優 先 さ せ る こ と が で き ま す 。 括 弧 で く く っ た 部 分 は 、 1 つ の 部 分 表 現 に な る の で す 。 後 方 参 照 と 部 分 表 現
n
が 1 個 の 数 字 で あ る よ う な 後 方 参 照 \n は 、 正 規 表 現 中 の 括 弧 で 囲 ま れ た n 番 目 の 部 分 表 現 が 前 も っ て マ ッ チ し た 文 字 列 と マ ッ チ し ま す 。 基 本 正 規 表 現 と 拡 張 正 規 表 現 基 本 正 規 表 現 で は 、 メ タ 文 字 ?, +, {, |, (, ) は 、 そ の 特 殊 な 意 味 を 失 い ま す 。 バ ッ ク ス ラ ッ シ ュ を 付 け た \?, \+, \{, \|, \(, \) を 代 わ り に 使 用 し て く だ さ い 。

環 境 変 数

grep の 動 作 は 、 以 下 に 挙 げ る 環 境 変 数 の 影 響 を 受 け ま す 。

LC_foo カ テ ゴ リ の ロ ケ ー ル は 、 LC_ALL, LC_foo, LANG と い う 3 つ の 環 境 変 数 を こ の 順 番 で 調 べ る こ と で 決 ま り ま す 。 こ の 3 つ の 環 境 変 数 の う ち 、 設 定 さ れ て い る 最 初 の も の が 、 LC_foo の ロ ケ ー ル を 決 め る の で す 。 た と え ば 、 LC_ALL が 設 定 さ れ て い ず 、 LC_MESSAGESpt_BR に 設 定 さ れ て い る と し ま し ょ う 。 そ の と き は 、 ブ ラ ジ ル の ポ ル ト ガ ル 語 と い う ロ ケ ー ル が LC_MESSAGES カ テ ゴ リ に 使 用 さ れ る わ け で す 。 こ う し た 環 境 変 数 が ま っ た く 設 定 さ れ て い な か っ た り 、 ロ ケ ー ル の カ タ ロ グ が イ ン ス ト ー ル さ れ て い な か っ た り 、 grep が 各 国 語 サ ポ ー ト ( NLS ) を 有 効 に し て コ ン パ イ ル さ れ て い な か っ た り し た 場 合 は 、 C ロ ケ ー ル が 使 用 さ れ ま す 。 シ ェ ル の locale −a コ マ ン ド に よ っ て 現 在 利 用 で き る ロ ケ ー ル が 一 覧 で き ま す 。
GREP_OPTIONS
こ の 変 数 で は デ フ ォ ル ト の オ プ シ ョ ン を 指 定 し ま す 。 そ う し た オ プ シ ョ ン は コ マ ン ド ラ イ ン で 明 示 的 に 指 定 す る オ プ シ ョ ン の 前 に 置 か れ ま す 。 こ れ が 移 植 性 の 高 い ス ク リ プ ト を 書 く と き に 問 題 と な る た め 、 こ の 機 能 は grep の 将 来 の リ リ ー ス で 削 除 さ れ る こ と に な っ て お り 、 使 用 す る と grep が 警 告 を 表 示 し ま す 。 か わ り に エ イ リ ア ス や ス ク リ プ ト を 使 っ て く だ さ い 。
GREP_COLOR
こ の 変 数 は 、 パ タ ー ン に マ ッ チ し た (空 文 字 列 で は な い ) テ キ ス ト を 強 調 す る た め に 使 用 す る 色 彩 を 指 定 し ま す 。 GREP_COLORS 変 数 を 使 用 す る 方 が 望 ま し く 、 こ の 変 数 は 非 推 奨 な の で す が 、 今 で も 使 え な い こ と は あ り ま せ ん 。 GREP_COLORS 変 数 の mt, ms, mc 機 能 を 使 用 し て い る 場 合 は 、 こ の 変 数 に よ る 指 定 よ り 、 そ ち ら の ほ う が 優 先 さ れ ま す 。 こ の 変 数 に よ っ て 指 定 で き る の は 、 マ ッ チ す る 空 文 字 列 で は な い テ キ ス ト を 強 調 す る た め に 、 マ ッ チ す る 行 な ら ど こ で も 使 用 す る 色 彩 だ け な の で す (マ ッ チ す る 行 は 、 コ マ ン ド ラ イ ン オ プ シ ョ ン -v を 指 定 し な か っ た と き は 、 選 択 さ れ る 行 に な り 、 -v を 指 定 し た と き は 、 前 後 の 文 脈 行 に な り ま す )。 こ の 変 数 の デ フ ォ ル ト の 値 は 01;31 で す が 、 そ れ は タ ー ミ ナ ル の デ フ ォ ル ト の 背 景 色 に 赤 い 前 景 色 の 太 字 で テ キ ス ト を 表 示 す る と い う こ と で す 。
GREP_COLORS
こ の 変 数 は 、 出 力 の さ ま ざ ま な 部 分 を 強 調 す る た め に 使 用 す る 、 色 彩 な ど の 属 性 を 指 定 し ま す 。 こ の 変 数 の 値 は コ ロ ン で 区 切 っ た 機 能 の リ ス ト で あ り 、 デ フ ォ ル ト で は 、 ms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36 に な っ て い て 、 rvne と い う 真 偽 値 を 取 る 機 能 は 設 定 し て あ り ま せ ん (す な わ ち 、 false に な っ て い ま す )。 使 用 で き る 機 能 は 、 以 下 の と お り で す 。

sl= 選 択 さ れ る 行 全 体 に 適 用 さ れ る

SGR パ ラ メ ー タ (選 択 さ れ る 行

と は 、 コ マ ン ド ラ イ ン で −v オ プ シ ョ ン を 指 定 し な か っ た と き は 、 マ ッ チ す る 行 、 −v オ プ シ ョ ン を 指 定 し た と き は 、 マ ッ チ し な い 行 の こ と で す )。 た だ し 、 値 に 真 偽 値 を 取 る rv 機 能 と コ マ ン ド ラ イ ン ・ オ プ シ ョ ン の −v の 両 方 を 指 定 し た と き は 、 前 後 の 文 脈 行 扱 い に な る マ ッ チ す る 行 に 適 用 さ れ ま す 。 デ フ ォ ル ト は 空 で す (す な わ ち 、 端 末 の デ フ ォ ル ト の 背 景 色 と 前 景 色 の 組 み 合 わ せ )。

cx= 前 後 の 文 脈 行 全 体 に 適 用 さ れ る

SGR パ ラ メ ー タ (前 後 の 文 脈 行

と は 、 コ マ ン ド ラ イ ン で −v オ プ シ ョ ン を 指 定 し な か っ た と き は 、 マ ッ チ し な い 行 、 −v オ プ シ ョ ン を 指 定 し た と き は 、 マ ッ チ す る 行 の こ と で す )。 た だ し 、 値 に 真 偽 値 を 取 る rv 機 能 と コ マ ン ド ラ イ ン ・ オ プ シ ョ ン の −v の 両 方 を 指 定 し た と き は 、 選 択 さ れ る マ ッ チ し な い 行 に 適 用 さ れ ま す 。 デ フ ォ ル ト は 空 で す (す な わ ち 、 端 末 の デ フ ォ ル ト の 背 景 色 と 前 景 色 の 組 み 合 わ せ )。

rv コ マ ン ド ラ イ ン で

−v が 指 定 さ れ て い る と き に 、 sl=cx=

機 能 の 意 味 を 逆 に す る (入 れ 替 え る ) 真 偽 値 。 デ フ ォ ル ト は 空 で す (す な わ ち 、 こ の 機 能 は 指 定 さ れ て い ま せ ん )。

mt=01;31 マ ッ チ す る 行 な ら ど こ で も 、 空 文 字 列 で は な い マ ッ チ す る テ キ ス ト に 適 用 さ れ る SGR パ ラ メ ー タ (マ ッ チ す る 行 は 、 コ マ ン ド ラ イ ン で −v オ プ シ ョ ン を 指 定 し な か っ た と き は 、 選 択 さ れ る 行 に な り 、 −v を 指 定 し た と き は 、 前 後 の 文 脈 行 に な り ま す )。 こ の 機 能 を 設 定 す る の は 、 ms=mc= を 同 時 に 同 じ 値 に 設 定 す る の と 同 じ こ と で す 。 デ フ ォ ル ト は 、 カ レ ン ト 行 の 背 景 色 に 赤 い 前 景 色 の 太 字 に な っ て い ま す 。
ms=01;31
選 択 さ れ る 行 中 の 空 文 字 列 で は な い マ ッ チ す る テ キ ス ト に 適 用 さ れ る SGR パ ラ メ ー タ (こ の 機 能 が 使 用 さ れ る の は 、 コ マ ン ド ラ イ ン で −v オ プ シ ョ ン を 指 定 し な い と き だ け で す )。 sl= 機 能 (rv が 設 定 さ れ て い る と き は 、 cx= 機 能 ) の 効 果 は 、 こ の 機 能 を 使 用 し て も 、 相 変 わ ら ず 有 効 で す 。 デ フ ォ ル ト は 、 カ レ ン ト 行 の 背 景 色 に 赤 い 前 景 色 の 太 字 に な っ て い ま す 。
mc=01;31
前 後 の 文 脈 行 中 の 空 文 字 列 で は な い マ ッ チ す る テ キ ス ト に 適 用 さ れ る SGR パ ラ メ ー タ (こ の 機 能 が 使 用 さ れ る の は 、 コ マ ン ド ラ イ ン で −v オ プ シ ョ ン が 指 定 さ れ て い る と き だ け で す )。 cx= 機 能 (rv が 設 定 さ れ て い る と き は 、 sl= 機 能 ) の 効 果 は 、 こ の 機 能 を 使 用 し て も 、 相 変 わ ら ず 有 効 で す 。 デ フ ォ ル ト は 、 カ レ ン ト 行 の 背 景 色 に 赤 い 前 景 色 の 太 字 に な っ て い ま す 。

fn=35 表 示 さ れ る 行 の 前 に フ ァ イ ル 名 が 付 く と き 、 そ れ に 適 用 さ れ る

SGR パ ラ メ ー タ 。 デ フ ォ ル ト は 、 端 末 の デ フ ォ ル ト の 背 景 色 に マ ゼ ン タ の 前 景 色 の 文 字 で す 。

ln=32 表 示 さ れ る 行 の 前 に 行 番 号 が 付 く と き 、 そ れ に 適 用 さ れ る

SGR

パ ラ メ ー タ 。 デ フ ォ ル ト は 、 端 末 の デ フ ォ ル ト の 背 景 色 に 緑 の 前 景 色 の 文 字 で す 。

bn=32 表 示 さ れ る 行 の 前 に バ イ ト オ フ セ ッ ト が 付 く と き 、 そ れ に 適 用 さ れ る

SGR パ ラ メ ー タ 。 デ フ ォ ル ト は 、 端 末 の デ フ ォ ル ト の 背 景 色 に 緑 の 前 景 色 の 文 字 で す 。

se=36 区 切 り 記 号 に 適 用 さ れ る

SGR パ ラ メ ー タ 。 区 切 り 記 号 と し て

は 、 選 択 さ れ る 行 の フ ィ ー ル ド 間 に は ’:’ を 置 き 、 前 後 の 文 脈 行 の フ ィ ー ル ド 間 に は ’’ を 置 き ま す 。 前 後 の 文 脈 行 の 表 示 が 指 定 さ れ て い る と き は 、 隣 接 行 グ ル ー プ の 間 に ’−−’ を 挿 入 し ま す 。 デ フ ォ ル ト は 、 端 末 の デ フ ォ ル ト の 背 景 色 に シ ア ン の 前 景 色 の 記 号 で す 。

ne 真 偽 値 で す 。 通 常 、 色 付 け さ れ た 項 目 が 終 わ る た び に 、 エ ス ケ ー プ ・ シ ー ケ ン ス

Erase in Line (EL) to Right (\33[K) を 使 用 し て 、 行 末 ま で 消 去 し ま す が 、 ne を 設 定 す る と 、 そ れ を や ら な く な り ま す 。 こ れ は 、 端 末 が EL を サ ポ ー ト し て い な い 場 合 に 必 要 で す 。 そ の ほ か 、 真 偽 値 を 取 る terminfo の 機 能 back_color_erase (bce) を 使 用 し て い な い 端 末 で 、 採 用 し た 強 調 色 が 背 景 に 作 用 し な い 場 合 や 、 EL が 遅 す ぎ た り 、 画 面 に ひ ど い チ ラ つ き を 引 き 起 こ し た り す る 場 合 に も 、 こ れ の 設 定 が 役 に 立 ち ま す 。 デ フ ォ ル ト は false で す (す な わ ち 、 こ の 機 能 は 設 定 さ れ て い ま せ ん )。 真 偽 値 を 取 る 機 能 に は =.. の 部 分 が な い こ と に 注 意 し て く だ さ い 。 そ う し た 機 能 は デ フ ォ ル ト で は 設 定 さ れ て い ず (す な わ ち 、 false)、 設 定 さ れ た と き true に な り ま す 。 使 用 し て い る テ キ ス ト 端 末 の 文 書 に あ る Select Graphic Rendition (SGR) の セ ク シ ョ ン を 見 て 、 使 用 で き る 値 や 、 そ れ が 文 字 属 性 と し て 使 わ れ た と き の 意 味 を 調 べ て く だ さ い 。 SGR パ ラ メ ー タ の 値 は 十 進 法 の 整 数 で あ り 、 セ ミ コ ロ ン で 結 合 す る こ と が で き ま す 。 grep は そ う し た セ ミ コ ロ ン で 結 合 さ れ た 数 字 か ら 完 全 な SGR シ ー ケ ン ス (\33[...m) を 構 成 し ま す 。 結 合 さ れ る 値 で よ く 使 わ れ る も の を 挙 げ る と 、 1 は 太 字 、 4 は 下 線 、 5 は 点 滅 、 7 は 反 転 で す 。 39 は デ フ ォ ル ト の 前 景 色 、 30 か ら 37 は 前 景 色 、 90 か ら 97 は 16 色 モ ー ド の 前 景 色 、 38;5;0 か ら 38;5;255 は 88 色 と 256 色 モ ー ド の 前 景 色 に 使 わ れ ま す 。 ま た 、 49 は デ フ ォ ル ト の 背 景 色 で あ り 、 40 か ら 47 は 背 景 色 、 100 か ら 107 は 16 色 モ ー ド の 背 景 色 、 48;5;0 か ら 48;5;255 は 88 色 と 256 色 モ ー ド の 背 景 色 で す 。

LC_ALL, LC_COLLATE, LANG こ う し た 変 数 は LC_COLLATE カ テ ゴ リ の ロ ケ ー ル を 指 定 し ま す 。 LC_COLLATE[a−z] の よ う な 範 囲 式 を 解 釈 す る と き の 照 合 順 序 を 決 め る も の で す 。
LC_ALL
, LC_CTYPE, LANG こ う し た 変 数 は LC_CTYPE カ テ ゴ リ の ロ ケ ー ル を 指 定 し ま す 。 LC_CTYPE は 文 字 の タ イ プ 、 た と え ば 、 空 白 (whitespace) に 当 た る の は ど の 文 字 と ど の 文 字 か 、 と い っ た こ と を 決 め る も の で す 。 こ の カ テ ゴ リ ー は 、 文 字 の エ ン コ ー デ ィ ン グ も 決 定 し ま す 。 つ ま り 、 テ キ ス ト の エ ン コ ー デ ィ ン グ が UTF-8 か 、 ASCII か 、 そ れ 以 外 の エ ン コ ー デ ィ ン グ か と い う こ と で す 。 ロ ケ ー ル が C か POSIX の 場 合 は 、 す べ て の 文 字 が 1 バ イ ト と し て エ ン コ ー ド さ れ 、 す べ て の バ イ ト が 有 効 な 文 字 と な り ま す 。
LC_ALL
, LC_MESSAGES, LANG こ う し た 変 数 は LC_MESSAGES カ テ ゴ リ の ロ ケ ー ル を 指 定 し ま す 。 LC_MESSAGESgrep が メ ッ セ ー ジ に 使 う 言 語 を 決 め る も の で す 。 デ フ ォ ル ト の C ロ ケ ー ル で は 、 ア メ リ カ 英 語 の メ ッ セ ー ジ が 使 用 さ れ ま す 。
POSIXLY_CORRECT
こ れ が 設 定 さ れ て い る と 、 grepPOSIX が 要 求 す る と お り の 動 作 を し ま す 。 設 定 さ れ て い な い 場 合 の 動 作 は 、 ほ か の GNU の プ ロ グ ラ ム に よ り 近 い も の で す 。 POSIX の 規 定 で は 、 フ ァ イ ル 名 の 後 に オ プ シ ョ ン が 現 れ た 場 合 、 そ れ を フ ァ イ ル 名 と し て 扱 わ な け れ ば な ら な い こ と に な っ て い ま す 。 こ れ に 対 し て 、 grep の デ フ ォ ル ト で は 、 そ う し た オ プ シ ョ ン を 引 き 数 リ ス ト の 前 の 方 に 移 動 し て 、 オ プ シ ョ ン と し て 扱 い ま す 。 ま た 、 POSIX の 規 定 で は 、 理 解 で き な い オ プ シ ョ ン は “illegal” (違 法 ) と 判 断 す る よ う に な っ て い ま す が 、 そ う し た オ プ シ ョ ン も 法 律 に 違 反 し て い る わ け で は な い の で 、 grep の デ フ ォ ル ト で は 、 “invalid” (無 効 ) と い う 判 断 を 下 し ま す 。

終 了 ス テ ー タ ス

通 常 で は 、 選 択 さ れ る 行 が 見 つ か っ た と き の 終 了 ス テ ー タ ス は 0 で あ り 、 見 つ か ら な か っ た と き は 1 で あ り 、 エ ラ ー が 起 き た 場 合 は 2 で す 。 た だ し 、 −q , −−quiet , −−silent と い っ た オ プ シ ョ ン が 使 わ れ て い て 、 選 択 さ れ る 行 が 見 つ か っ た と き は 、 エ ラ ー が 起 き た と き で も 終 了 ス テ ー タ ス は 0 で す 。

著 作 権

Copyright 1998-2000, 2002, 2005-2016 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

バ グ

バ グ の 報 告 バ グ 報 告 は bug-grep [AT] gnu.org">バグ報告アドレス 宛 に E メ ー ル で 送 っ て く だ さ い 。 http://lists.gnu.org/mailman/listinfo/bug-grep">メールアーカイブ と http://debbugs.gnu.org/cgi/pkgreport.cgi?package=grep">バグトラッカー も 用 意 さ れ て い ま す 。 既 知 の バ ク

{n,m} を 使 っ て 何 度 も 繰 り 返 し を 行 う と 、 grep は 大 量 の メ モ リ を 消 費 す る か も し れ ま せ ん 。 ま た 、 ほ か の 曖 昧 な 正 規 表 現 に も 、 指 数 関 数 的 な 時 間 と メ モ リ 空 間 を 要 す る も の が あ り 、 grep が メ モ リ 不 足 を 起 こ す こ と が あ り ま す 。 後 方 参 照 は 非 常 に 遅 く 、 と ん で も な く 時 間 が か か る こ と が あ り ま す 。

関 連 項 目

標 準 の マ ニ ュ ア ル ペ ー ジ

awk(1), cmp(1), diff(1), find(1), gzip(1), perl(1), sed(1), sort(1), xargs(1), zgrep(1), read(2), pcre(3), pcresyntax(3), pcrepattern(3), terminfo(5), glob(7), regex(7).

POSIX プ ロ グ ラ マ ー ズ ・ マ ニ ュ ア ル ペ ー ジ
grep(1p). 完 全 版 の 文 書
http://www.gnu.org/software/grep/manual/">完全版のマニュアル が 用 意 さ れ て い ま す 。 infogrep プ ロ グ ラ ム が 御 使 用 の サ イ ト に き ち ん と イ ン ス ト ー ル さ れ て い る な ら ば 、

info grep と コ マ ン ド を 打 ち 込 む こ と で 、 完 備 し た マ ニ ュ ア ル が 読 め る は ず で す 。

注 記

こ の マ ニ ュ ア ル は 断 続 的 に メ ン テ ナ ン ス さ れ る た め 、 完 全 版 の 文 書 の ほ う が 最 新 で あ る こ と が よ く あ り ま す 。

訳 者 謝 辞

こ の 翻 訳 は 、 FreeBSD jpman Project <http://www.jp.freebsd.org/man-jp/>; か ら Linux JM project に 寄 贈 し て い た だ い た マ ニ ュ ア ル を 元 に し 、 GNU grep の 新 し い マ ニ ュ ア ル に 合 わ せ て 、 増 補 ・ 改 訂 し て い ま す 。 こ の 場 を 借 り て 、 FreeBSD jpman Project の 翻 訳 者 の 方 々 に お 礼 を 申 し 上 げ ま す 。

COMMENTS