Man page - find(1)
Packages contains this manual
Available languages:
en fr pt_BR pl nl ja uk ru zh_TW zh_CN deManual
FIND
名 前書 式
説 明
オ プ シ ョ ン
式
位 置 オ プ シ ョ ン
グ ロ ー バ ル オ プ シ ョ ン
テ ス ト (test)
ア ク シ ョ ン
オ ペ レ ー タ ー
普 通 で は な い フ ァ イ ル 名
規 格 へ の 準 拠
環 境 変 数
例
単 純 な ‘find|xargs‘ の ア プ ロ ー チ
安 全 な ‘find -print0 | xargs -0‘ に よ る ア プ ロ ー チ
任 意 の 検 索 開 始 ポ イ ン ト か ら の 処 理
各 フ ァ イ ル に 対 す る コ マ ン ド 実 行
異 な る 2 つ の ア ク シ ョ ン 、 フ ァ イ ル シ ス テ ム 検 索 は 1 回
期 間 の 指 定 を 使 っ た フ ァ イ ル 検 索
許 可 属 性 を 使 っ た フ ァ イ ル 検 索
除 外 - フ ァ イ ル や サ ブ デ ィ レ ク ト リ の 除 き 方
こ の 他 の 利 用 例
終 了 ス テ ー タ ス
履 歴
バ グ で は な い も の
意 外 な オ ペ レ ー タ ー 優 先 順 位
エ ラ ー メ ッ セ ー ジ “paths must precede expression”
バ グ
バ グ 報 告
著 作 権
関 連 項 目
名 前
find - デ ィ レ ク ト リ 階 層 内 の フ ァ イ ル 検 索
書 式
find [-H] [-L] [-P] [-D debugopts] [-Olevel] [starting-point...] [expression]
説 明
こ の マ ニ ュ ア ル ペ ー ジ は GNU 版 find の 使 用 法 を 説 明 し て い ま す 。 GNU find は 、 指 定 さ れ た 検 索 開 始 ポ イ ン ト (starting-point) を 基 準 に し て 、 デ ィ レ ク ト リ ツ リ ー を 検 索 し ま す 。 そ し て 優 先 規 則 に 従 っ て (「 オ ペ レ ー タ ー 」 の セ ク シ ョ ン 参 照 )、 指 定 さ れ た 式 (expression) を 左 か ら 右 の 順 で 評 価 し て い き ま す 。 た と え ば 、 and 演 算 で 左 辺 が false に な っ た 場 合 や 、 or 演 算 で 左 辺 が true に な っ た 場 合 の よ う に 、 式 の 結 果 が 確 定 す る と 、 find は 次 の フ ァ イ ル 名 を 処 理 対 象 と し ま す 。 検 索 開 始 ポ イ ン ト が 指 定 さ れ て い な い 場 合 は 、 ‘.’ が 指 定 さ れ た も の と み な し ま す 。
セ キ ュ リ テ ィ を 重 視 す る 必 要 が あ る 状 況 (た と え ば 、 別 ユ ー ザ ー が 書 き 込 み 可 能 な デ ィ レ ク ト リ を 、 自 分 が 検 索 し よ う と し て い る 場 合 ) の も と で 、 find を 利 用 す る 場 合 に は 、 findutils 文 書 の 「 Security Considerations」 の 章 を よ く 読 ん で く だ さ い 。 こ の 文 書 は Finding Files と い う も の で あ り 、 findutils に 含 ま れ て い ま す 。 こ の 文 書 の 方 が マ ニ ュ ア ル ペ ー ジ に 比 べ て 、 詳 し い 説 明 や 検 討 が 行 わ れ て い る の で 、 役 に 立 つ 情 報 が 得 ら れ る か も し れ ま せ ん 。
オ プ シ ョ ン
-H , -L , -P と い う オ プ シ ョ ン は 、 シ ン ボ リ ッ ク リ ン ク の 取 り 扱 い を 制 御 し ま す 。 こ の オ プ シ ョ ン に 続 く コ マ ン ド ラ イ ン 引 数 は 、 検 索 対 象 と な る フ ァ イ ル 名 や デ ィ レ ク ト リ 名 と し て 扱 わ れ ま す 。 た だ し そ の よ う に 扱 わ れ る の は 、 次 に ‘-’ で 始 ま る 引 数 や 、 ‘(’ や ‘!’ と い う 引 数 が 現 れ る と こ ろ ま で で す 。 そ の 引 数 以 降 の 記 述 は 、 検 索 方 法 を 示 し た 式 と し て 扱 わ れ ま す 。 検 索 開 始 ポ イ ン ト の パ ス が 指 定 さ れ な か っ た 場 合 は 、 カ レ ン ト デ ィ レ ク ト リ が 検 索 対 象 に な り ま す 。 ま た 、 式 が 指 定 さ れ な か っ た 場 合 は 、 式 -print が 使 用 さ れ ま す (た だ し ど の よ う な 場 合 で も 、 -print で は な く -print0 の 利 用 を 検 討 し て く だ さ い )。
こ の マ ニ ュ ア ル ペ ー ジ で は 、 式 の 中 で 用 い る 「 オ プ シ ョ ン 」 に つ い て 説 明 し て い ま す 。 オ プ シ ョ ン は 、 find の 動 作 を 制 御 し ま す 。 こ れ を 指 定 す る の は 、 パ ス 名 の 指 定 を 終 え た 後 ろ で す 。 こ れ と は 別 に 、 「 本 当 の 」 オ プ シ ョ ン と し て -H , -L , -P , -D , -O と い う 5 つ が あ り ま す 。 こ れ を 用 い る の で あ れ ば 、 パ ス 名 の 指 定 よ り も 前 で な け れ ば な り ま せ ん 。 な お 仕 様 上 は 、 ダ ッ シ ュ を 2 つ 重 ね た -- を 使 用 す る こ と で 、 そ れ 以 降 の 引 数 が 、 オ プ シ ョ ン で な い こ と を 表 す こ と が で き る と さ れ ま す 。 た だ し 、 こ の 後 に 続 く 引 数 が パ ス 引 数 で あ る か ど う か を 決 定 す る 処 理 が 原 因 と な っ て 、 2 重 の ダ ッ シ ュ は 実 際 に は 動 作 し ま せ ん 。 つ ま り 式 を 表 す 引 数 (こ れ も ‘-’ で 始 ま り ま す ) が 現 れ る と こ ろ ま で 、 引 数 を 読 み 込 む こ と で 、 パ ス 引 数 の 終 わ り が 判 断 さ れ ま す 。 仮 に パ ス 引 数 が ‘-’ で 始 ま っ て い た と し た ら 、 find は こ れ を 式 と し て 取 り 扱 っ て し ま い ま す 。 こ の よ う に 、 検 索 開 始 点 で あ る パ ス 引 数 は 、 適 切 に 解 釈 さ れ な い 場 合 が あ り 、 他 に も 、 ワ イ ル ド カ ー ド パ タ ー ン を シ ェ ル が 展 開 す る 際 に 、 誤 っ て 式 の よ う に 展 開 し て し ま う こ と が あ り ま す 。 こ の よ う な 状 況 を 避 け る た め 、 一 般 的 に 行 う 安 全 策 と し て は 、 不 安 に 思 う パ ス 名 称 や ワ イ ル ド カ ー ド の 前 に は 、 ‘./’ を つ け る よ う に す る か 、 ’/’ で 始 ま る 絶 対 パ ス 名 を 用 い る よ う に し ま す 。 別 の 方 法 と し て 移 植 性 に は 欠 け ま す が 安 全 な 方 法 が あ り ま す 。 GNU オ プ シ ョ ン の -files0-from を 使 っ て find の 検 索 開 始 ポ イ ン ト を 任 意 に 定 め る 方 法 で す 。
|
-P |
シ ン ボ リ ッ ク リ ン ク を た ど り ま せ ん 。 こ れ が デ フ ォ ル ト の 動 作 で す 。 find が フ ァ イ ル の 情 報 を 調 べ た り 表 示 し た り す る 際 に 、 そ の フ ァ イ ル が シ ン ボ リ ッ ク リ ン ク で あ れ ば 、 シ ン ボ リ ッ ク リ ン ク そ の も の の プ ロ パ テ ィ か ら 取 得 さ れ る 情 報 が 用 い ら れ ま す 。 |
||
|
-L |
シ ン ボ リ ッ ク リ ン ク を た ど り ま す 。 find が フ ァ イ ル の 情 報 を 調 べ た り 表 示 し た り す る 際 に は 、 リ ン ク 先 フ ァ イ ル の プ ロ パ テ ィ か ら 情 報 が 取 得 さ れ 利 用 さ れ ま す 。 つ ま り リ ン ク そ の も の の 情 報 は 利 用 さ れ ま せ ん (た だ し 、 シ ン ボ リ ッ ク リ ン ク が 切 れ て い た り 、 find が リ ン ク 先 の フ ァ イ ル を 調 べ る こ と が で き な か っ た 場 合 は 除 き ま す )。 こ の オ プ シ ョ ン の 指 定 は 、 暗 に -noleaf の 指 定 を 含 み ま す 。 こ の 指 定 の 後 ろ に -P オ プ シ ョ ン を 指 定 し て も 、 -noleaf の 効 果 は 変 わ り ま せ ん 。 -L が 有 効 で あ っ て 、 find が サ ブ デ ィ レ ク ト リ を 指 し 示 す シ ン ボ リ ッ ク リ ン ク を 見 つ け た 場 合 は 、 サ ブ デ ィ レ ク ト リ 内 が 検 索 さ れ ま す 。 |
-L オ プ シ ョ ン が 有 効 な 場 合 に 、 述 語 表 現 で あ る -type を 用 い る と 、 シ ン ボ リ ッ ク リ ン ク そ の も の で は な く 、 シ ン ボ リ ッ ク リ ン ク 先 の フ ァ イ ル の タ イ プ に 対 し て 、 確 認 が 行 わ れ ま す (リ ン ク 切 れ で あ る 場 合 は 除 き ま す )。 find の 実 行 中 に 、 シ ン ボ リ ッ ク リ ン ク 切 れ を 起 こ す よ う な ア ク シ ョ ン を 行 う と (た と え ば 、 -delete を 指 定 す る と )、 混 乱 を 招 く 動 作 が 発 生 す る こ と に な り ま す 。 -L を 使 用 す る と 、 述 語 表 現 の -lname や -ilname は 必 ず false を 返 し ま す 。
|
-H |
シ ン ボ リ ッ ク リ ン ク を た ど り ま せ ん 。 た だ し コ マ ン ド ラ イ ン 引 数 を 処 理 す る 場 合 は 別 で す 。 find が フ ァ イ ル の 情 報 を 調 べ た り 表 示 し た り す る 際 に は 、 シ ン ボ リ ッ ク リ ン ク そ の も の か ら プ ロ パ テ ィ を 取 得 し て 、 そ の 情 報 が 利 用 さ れ ま す 。 こ の よ う な 動 作 は 、 コ マ ン ド ラ イ ン 上 の フ ァ イ ル が シ ン ボ リ ッ ク リ ン ク で あ っ た 場 合 に は 行 わ れ ま せ ん 。 こ の と き に は 、 リ ン ク 先 が 読 み 取 ら れ ま す 。 つ ま り そ の 状 況 で は 、 リ ン ク 先 が 何 で あ っ て も 、 リ ン ク 先 か ら 取 得 し た 情 報 が 利 用 さ れ ま す (つ ま り リ ン ク を た ど り ま す )。 シ ン ボ リ ッ ク リ ン ク 自 体 の 情 報 は 、 リ ン ク 先 が 確 認 で き な か っ た 場 合 の 予 備 情 報 と し て 利 用 さ れ ま す 。 -H が 有 効 で あ っ て 、 コ マ ン ド ラ イ ン で 指 定 さ れ た パ ス の う ち 、 デ ィ レ ク ト リ へ の シ ン ボ リ ッ ク リ ン ク が あ っ た 場 合 も 、 そ の デ ィ レ ク ト リ の 中 身 が 調 べ ら れ る こ と に な り ま す (た だ し -maxdepth 0 が 指 定 さ れ て い れ ば 、 当 然 そ の よ う な 処 理 に は な り ま せ ん )。 |
複 数 の -H , -L , -P を 指 定 し た 場 合 は 、 前 の も の が 上 書 き さ れ ま す 。 つ ま り 、 適 用 さ れ る も の は 、 コ マ ン ド ラ イ ン 上 で 最 後 に 指 定 さ れ た も の で す 。 -P が デ フ ォ ル ト な の で 、 -H や -L の 指 定 が な け れ ば 、 -P オ プ シ ョ ン が 有 効 で あ る と 判 断 で き ま す 。
GNU find は 、 検 索 処 理 に 入 る 前 の コ マ ン ド ラ イ ン 処 理 に お い て も 、 フ ァ イ ル 情 報 を 調 べ る こ と が あ り ま す 。 上 に 示 し た オ プ シ ョ ン は 、 そ の よ う な 引 数 の 処 理 に 対 し て も 、 影 響 を 及 ぼ し ま す 。 具 体 的 に 見 て み る と 、 数 多 く の テ ス ト で は 、 そ の 時 点 で 処 理 対 象 と な っ て い る 1 つ の フ ァ イ ル と 、 コ マ ン ド ラ イ ン 上 の 複 数 フ ァ イ ル と の 間 で 、 比 較 処 理 を 行 い ま す 。 ど の 状 況 で も 、 コ マ ン ド ラ イ ン か ら 指 定 さ れ た フ ァ イ ル は 、 プ ロ パ テ ィ が 調 べ ら れ て 、 そ の 一 部 は 保 存 さ れ ま す 。 引 数 上 の フ ァ イ ル が シ ン ボ リ ッ ク リ ン ク で あ っ て 、 -P オ プ シ ョ ン が 有 効 な 場 合 (あ る い は -H と -L オ プ シ ョ ン の 指 定 が ど ち ら も な い 場 合 )、 比 較 処 理 に 用 い ら れ る の は 、 シ ン ボ リ ッ ク リ ン ク の プ ロ パ テ ィ 情 報 で す 。 そ う で な い 場 合 に は 、 リ ン ク 先 フ ァ イ ル の プ ロ パ テ ィ 情 報 が 用 い ら れ ま す 。 find が リ ン ク 先 を た ど れ な か っ た 場 合 (た と え ば 権 限 が 不 足 し て い た 場 合 や 、 リ ン ク 先 が 存 在 し な い フ ァ イ ル で あ っ た 場 合 )、 シ ン ボ リ ッ ク リ ン ク そ の も の の プ ロ パ テ ィ が 用 い ら れ ま す 。
-H あ る い は -L オ プ シ ョ ン が 有 効 な 場 合 、 -newer の 引 数 と し て 指 定 さ れ た も の が シ ン ボ リ ッ ク リ ン ク な ら 、 そ の 参 照 を た ど っ て 、 リ ン ク 先 の フ ァ イ ル か ら タ イ ム ス タ ン プ を 取 得 し ま す 。 こ の よ う な 処 理 は 、 -newerXY , -anewer , -cnewer で も 同 様 に 行 わ れ ま す 。
-follow
オ プ シ ョ ン は
、
-L
と 同 様 の
効 果 が あ り ま
す が 、 オ プ シ
ョ ン の 指 定 位
置 以 降 に 対 し
て 有 効 に な り
ま す 。 (つ ま り
、
-L
を 使 わ ず
に 、
-follow
が 使 わ
れ た 場 合 、 コ
マ ン ド ラ イ ン
上 、 シ ン ボ リ
ッ ク リ ン ク が
-follow
の 後 ろ に 指
定 さ れ て い る
場 合 は 、 参 照
を た ど る の に
対 し て 、 そ の
前 に 指 定 さ れ
た も の は 参 照
を た ど り ま せ
ん 。 )
-D debugopts
診 断 情 報 を 出 力 し ま す 。 find が 思 う よ う に 動 か な い 場 合 に 、 原 因 調 査 に 役 立 て る こ と が で き ま す 。 デ バ ッ グ オ プ シ ョ ン を 複 数 指 定 す る と き は 、 カ ン マ で 区 切 り ま す 。 findutils の リ リ ー ス 間 に お い て 、 デ バ ッ グ オ プ シ ョ ン の 互 換 性 は 保 証 さ れ ま せ ん 。 有 効 な デ バ ッ グ オ プ シ ョ ン の 一 覧 は 、 find -D help の 出 力 を 確 認 し て く だ さ い 。 有 効 な デ バ ッ グ オ プ シ ョ ン に は 、 以 下 の も の が あ り ま す 。
|
exec |
-exec, -execdir, -ok, -okdir に 関 連 す る 診 断 情 報 を 表 示 し ま す 。 |
||
|
opt |
式 ツ リ ー (expression tree) の 最 適 化 に 関 す る 診 断 情 報 を 表 示 し ま す 。 -O オ プ シ ョ ン を 参 照 し て く だ さ い 。 |
||
|
rates |
述 語 表 現 が 成 功 あ る い は 失 敗 し た 回 数 を 、 取 り ま と め て 表 示 し ま す 。 |
||
|
search |
デ ィ レ ク ト リ ツ リ ー を 詳 細 に 示 し ま す 。 |
||
|
stat |
シ ス テ ム コ ー ル の stat や lstat を 使 っ て 、 フ ァ イ ル が 調 べ ら れ た 場 合 に 、 メ ッ セ ー ジ を 表 示 し ま す 。 find プ ロ グ ラ ム は 、 そ の よ う な シ ス テ ム コ ー ル の 呼 び 出 し を 、 最 小 と な る よ う に 処 理 し ま す 。 |
||
|
tree |
式 ツ リ ー (expression tree) を 、 元 の 形 と 最 適 化 し た 形 で 示 し ま す 。 |
||
|
all |
す べ て の デ バ ッ グ オ プ シ ョ ン を 有 効 に し ま す (た だ し help は 除 き ま す )。 |
||
|
help |
デ バ ッ グ 用 オ プ シ ョ ン を 説 明 し ま す 。 |
-Olevel
問 い 合 わ せ の 最 適 化 を 有 効 に し ま す 。 find プ ロ グ ラ ム は 、 複 数 テ ス ト 全 体 の 処 理 内 容 を 変 え る こ と な く 、 テ ス ト の 順 番 を 並 べ 替 え て 、 実 行 速 度 を 上 げ ま す 。 た だ し 、 副 作 用 を 持 つ 述 語 は 、 他 の 述 語 と 入 れ 替 え は 行 い ま せ ん 。 最 適 化 レ ベ ル ご と の 最 適 化 の 違 い は 以 下 の と お り で す 。
|
0 |
最 適 化 レ ベ ル 1 と 同 じ で す 。 |
||
|
1 |
こ れ は デ フ ォ ル ト の 最 適 化 レ ベ ル で あ り 、 従 来 か ら あ る 動 作 で す 。 フ ァ イ ル 名 だ け を 確 認 す る テ ス ト (た と え ば -name や -regex ) が 先 に 実 行 さ れ る よ う に 、 式 の 並 び 替 え を 行 い ま す 。 |
||
|
2 |
フ ァ イ ル 名 だ け を 確 認 す る テ ス ト よ り も 、 -type あ る い は -xtype を 後 に 処 理 し ま す 。 た だ し i ノ ー ド か ら の 情 報 を 必 要 と す る テ ス ト よ り は 、 前 に 処 理 し ま す 。 最 近 の Unix で は 、 readdir() 関 数 が フ ァ イ ル タ イ プ を 返 す よ う に な っ て い る た め 、 こ れ ら の 述 語 表 現 は 、 フ ァ イ ル 情 報 を 最 初 に 調 べ る 述 語 表 現 に 比 べ て 、 処 理 が 高 速 に な り ま す 。 述 語 表 現 の -fstype FOO を 用 い た 際 に 、 指 定 し た フ ァ イ ル シ ス テ ム タ イ プ FOO が 、 find の 起 動 時 点 に お い て 不 明 な も の (‘/etc/mtab’ に 存 在 し な い も の ) で あ っ た 場 合 、 こ の 述 語 表 現 は -false に 等 し く な り ま す 。 |
||
|
3 |
こ の 最 適 化 レ ベ ル で は 、 コ ス ト ベ ー ス に よ っ て 最 適 化 を 行 う 、 完 全 な 問 合 せ オ プ テ ィ マ イ ザ ー (query optimiser) を 有 効 に し ま す 。 コ ス ト の 低 い (つ ま り 高 速 に な る ) テ ス ト を 先 に 処 理 し 、 コ ス ト の 高 い も の は 後 に 処 理 す る と い う よ う に 、 必 要 に 応 じ た 並 び 替 え が 行 わ れ ま す 。 一 定 の コ ス ト の 幅 の 中 で は 、 述 語 表 現 が 成 功 す る か 否 か の 可 能 性 を 考 慮 し て 、 述 語 表 現 の 評 価 を 先 に 行 っ た り 、 後 に 行 っ た り し ま す 。 -o の 場 合 は 、 成 功 す る 可 能 性 の あ る も の が 、 先 に 評 価 さ れ ま す 。 -a の 場 合 は 、 失 敗 す る 可 能 性 の あ る も の が 、 先 に 評 価 さ れ ま す 。 |
コ ス ト ベ ー ス の オ プ テ ィ マ イ ザ ー は 、 対 象 の テ ス ト が 成 功 す る か ど う か に 関 し て 、 一 定 の 取 り 決 め を 設 け て い ま す 。 成 功 す る か ど う か の 判 断 は 、 テ ス ト の 性 質 を 配 慮 し て 、 状 況 に よ り 変 化 す る 場 合 が あ り ま す (た と え ば -type f の 場 合 は 、 -type c よ り も 、 成 功 す る 可 能 性 が 高 い と み な し て い ま す )。 コ ス ト ベ ー ス の オ プ テ ィ マ イ ザ ー は 現 在 、 評 価 中 の 段 階 で す 。 し た が っ て 、 find の 性 能 が 実 際 に 向 上 し な け れ ば 、 削 除 さ れ る 予 定 で す 。 逆 に 、 こ の 機 能 に 信 頼 性 や 確 実 さ が 確 認 さ れ て 、 効 果 的 で あ る こ と が 分 か れ ば 、 後 々 、 下 位 の 最 適 化 レ ベ ル に お い て 実 現 す る か も し れ ま せ ん 。 た だ し 、 4.3.x 系 の リ リ ー ス に お い て は 、 デ フ ォ ル ト の 動 作 (最 適 化 レ ベ ル 1) を 変 更 す る 予 定 は あ り ま せ ん 。 findutils の テ ス ト ス イ ー ト で は 、 find に 対 す る テ ス ト す べ て に お い て 、 各 最 適 化 レ ベ ル で の 処 理 を 実 施 し て い て 、 そ の 結 果 が 同 一 に な る こ と を 確 認 し て い ま す 。
式
コ
マ ン ド ラ イ ン
上 で 、 検 索 開
始 ポ イ ン ト
(starting-point) の リ ス ト
の 次 に く る も
の が 、 式 (
expression
)
で す 。 式 は 、
検 索 方 法 を 定
め ま す 。 ど の
フ ァ イ ル に 一
致 す る か 、 一
致 し た フ ァ イ
ル を ど う 処 理
す る か 、 と い
う こ と を 表 し
ま す 。 式 は 、
以 下 の 項 目 か
ら 構 成 さ れ ま
す 。
テ ス ト (test)
テ ス ト は true ま た は false を 返 し ま す 。 通 常 そ の 値 は 、 処 理 時 点 で の 対 象 フ ァ イ ル の 所 定 の プ ロ パ テ ィ に 基 づ い て 決 ま り ま す 。 た と え ば -empty と い う テ ス ト は 、 対 象 フ ァ イ ル が 空 の 場 合 に true に な り ま す 。
ア ク シ ョ ン (action)
ア ク シ ョ ン に は 副 作 用 が あ り (た と え ば 、 標 準 出 力 に 何 か を 表 示 す る な ど し て )、 そ の 上 で true ま た は false を 返 し ま す 。 通 常 そ の 値 は 、 副 作 用 に よ る 処 理 の 成 功 ま た は 失 敗 に 基 づ い て 決 ま り ま す 。 た と え ば -print と い う ア ク シ ョ ン は 、 対 象 フ ァ イ ル の 名 前 を 標 準 出 力 に 出 力 し ま す 。
グ ロ ー バ ル オ プ シ ョ ン (global option)
グ ロ ー バ ル オ プ シ ョ ン は 、 コ マ ン ド ラ イ ン 上 に 指 定 さ れ て い る テ ス ト や ア ク シ ョ ン す べ て に 影 響 を 及 ぼ し ま す 。 グ ロ ー バ ル オ プ シ ョ ン は 、 必 ず true を 返 し ま す 。 た と え ば 、 -depth オ プ シ ョ ン を 指 定 す る と 、 find が フ ァ イ ル シ ス テ ム を た ど る と き に 、 深 い 方 か ら 先 (depth-first order) に 処 理 し ま す 。
位 置 オ プ シ ョ ン (positional option)
位 置 オ プ シ ョ ン は 、 こ の 後 ろ に あ る テ ス ト や ア ク シ ョ ン に 対 し て の み 影 響 を 及 ぼ し ま す 。 位 置 オ プ シ ョ ン は 、 必 ず true を 返 し ま す 。 た と え ば -regextype オ プ シ ョ ン は 、 そ の 記 述 位 置 に よ っ て 動 作 が 決 ま り ま す 。 コ マ ン ド ラ イ ン 上 で 、 こ の 記 述 以 降 に 現 れ る 正 規 表 現 が 、 ど う い っ た 方 言 の 正 規 表 現 で あ る か を 指 定 し ま す 。
オ ペ レ ー タ ー (operator)
オ ペ レ ー タ ー は 、 式 を 構 成 す る 項 目 ど う し を 結 び つ け ま す 。 オ ペ レ ー タ ー に は 、 -o (論 理 OR の 意 味 ) や -a (論 理 AND の 意 味 ) が あ り ま す 。 オ ペ レ ー タ ー が な い と こ ろ は 、 -a が あ る も の と み な さ れ ま す 。
式 が す べ て true に な っ た フ ァ イ ル に 対 し て 、 ア ク シ ョ ン -print が 実 行 さ れ ま す 。 た だ し ア ク シ ョ ン -prune ま た は -quit を 除 い た 、 他 の ア ク シ ョ ン が あ る 場 合 は 、 実 行 さ れ ま せ ん 。 デ フ ォ ル ト の -print の 動 作 を 発 生 さ せ な い ア ク シ ョ ン は 、 以 下 の も の で す 。 -delete , -exec , -execdir , -ok , -okdir , -fls , -fprint , -fprintf , -ls , -print , -printf
-delete と い う ア ク シ ョ ン は 、 オ プ シ ョ ン の よ う に も 働 き ま す ( -depth の 指 定 を 暗 に 含 む た め で す )。
位 置 オ プ シ ョ ン
位
置 オ プ シ ョ ン
は 、 常 に true を 返
し ま す 。 位 置
オ プ シ ョ ン は
、 こ の 後 ろ に
あ る テ ス ト に
対 し て の み 影
響 を 及 ぼ し ま
す 。
-daystart
時 間 の 計 測 を 、 24 時 間 前 か ら で は な く 、 本 日 の 始 ま り か ら と し ま す (対 象 は -amin , -atime , -cmin , -ctime , -mmin , -mtime で す )。 こ の オ プ シ ョ ン の 指 定 が 有 効 に な る の は 、 コ マ ン ド ラ イ ン 上 で こ れ よ り も 後 ろ に 記 述 さ れ た テ ス ト に 対 し て の み で す 。
-follow
非 推 奨 と さ れ て い ま す 。 代 わ り に -L オ プ シ ョ ン を 使 っ て く だ さ い 。 こ れ は シ ン ボ リ ッ ク リ ン ク を た ど ま す 。 -noleaf の 指 定 を 暗 に 含 み ま す 。 -follow オ プ シ ョ ン が 影 響 を 及 ぼ す の は 、 コ マ ン ド ラ イ ン 上 で 、 こ れ よ り も 後 ろ に 指 定 さ れ た テ ス ト に 対 し て の み で す 。 -H あ る い は -L オ プ シ ョ ン の 指 定 が な け れ ば 、 -follow オ プ シ ョ ン が 記 述 さ れ る と 、 述 語 表 現 -newer の 動 作 は 変 わ り ま す 。 -newer の 引 数 と し て 指 定 さ れ た フ ァ イ ル が 、 シ ン ボ リ ッ ク リ ン ク で あ っ た 場 合 は 、 そ の リ ン ク 先 が 参 照 さ れ ま す 。 -newerXY , -anewer , -cnewer に つ い て も 同 様 で す 。 ま た 、 述 語 表 現 の -type も 、 シ ン ボ リ ッ ク リ ン ク そ の も の で は な く 、 シ ン ボ リ ッ ク リ ン ク 先 の フ ァ イ ル タ イ プ に 一 致 す る よ う に な り ま す 。 -follow を 指 定 す る と 、 述 語 表 現 -lname と -ilname は 、 必 ず false を 返 し ま す 。
-regextype type
コ マ ン ド ラ イ ン 上 で 、 こ の 後 に 記 述 さ れ る テ ス ト -regex と -iregex に 対 し て 、 解 釈 す る 正 規 表 現 文 法 を 変 更 し ま す 。 正 規 表 現 の 種 類 に は 何 が あ る か に つ い て は 、 -regextype help を 実 行 し て 確 認 し て く だ さ い 。 Texinfo 文 書 (「 関 連 項 目 」 参 照 ) で は 、 各 種 正 規 表 現 の 意 味 や 違 い に つ い て 説 明 し て い ま す 。
-warn, -nowarn
警 告 メ ッ セ ー ジ の 表 示 、 非 表 示 を 切 り 替 え ま す 。 こ の 警 告 は 、 コ マ ン ド ラ イ ン の 使 用 法 に 関 す る も の だ け を 対 象 と し ま す 。 逆 に find の デ ィ レ ク ト リ 検 索 時 に お け る 処 理 状 況 に 関 す る も の は 、 対 象 と し ま せ ん 。 デ フ ォ ル ト の 動 作 は 、 標 準 入 力 が tty で あ れ ば -warn に な り 、 そ う で な け れ ば -nowarn に な り ま す 。 コ マ ン ド ラ イ ン の 使 用 法 に 関 す る 警 告 メ ッ セ ー ジ が 出 力 さ れ た 場 合 で あ っ て も 、 find の 終 了 ス テ ー タ ス に は 影 響 し ま せ ん 。 環 境 変 数 POSIXLY_CORRECT が 設 定 さ れ た 状 態 で 、 -warn が 指 定 さ れ る と 、 警 告 が 発 生 し た と し て も 、 ど の 警 告 を 出 す の か は 未 定 で す 。
グ ロ ー バ ル オ プ シ ョ ン
グ ロ ー バ ル オ プ シ ョ ン は 、 必 ず true を 返 し ま す 。 グ ロ ー バ ル オ プ シ ョ ン は 、 コ マ ン ド ラ イ ン 上 で 、 こ れ よ り も 前 に あ る テ ス ト に 対 し て も 影 響 を 及 ぼ し ま す 。 混 乱 を 避 け る た め に 、 コ マ ン ド ラ イ ン 上 で の グ ロ ー バ ル オ プ シ ョ ン の 指 定 は 、 検 索 開 始 ポ イ ン ト の リ ス ト の 後 ろ で 、 テ ス ト 、 位 置 オ プ シ ョ ン 、 ア ク シ ョ ン の 直 前 に 指 定 し て く だ さ い 。 グ ロ ー バ ル オ プ シ ョ ン を 、 そ れ と は 別 の 場 所 で 指 定 す る と 、 find は 、 混 乱 す る 可 能 性 が あ る こ と を 示 す 警 告 メ ッ セ ー ジ を 出 力 し ま す 。
グ ロ ー バ ル オ プ シ ョ ン の 指 定 位 置 は 、 検 索 開 始 ポ イ ン ト の リ ス ト よ り 後 ろ で す 。 こ の た め -L と は 異 な る 種 類 の も の で す 。 た と え ば 以 下 の と お り で す 。
|
-d |
-depth と 同 じ で す 。 FreeBSD, NetBSD, MacOS X, OpenBSD と の 互 換 性 の た め に あ り ま す 。 |
||
|
-depth |
デ ィ レ ク ト リ そ の も の よ り 前 に 、 デ ィ レ ク ト リ の 中 を 処 理 し ま す 。 ア ク シ ョ ン -delete に は -depth オ プ シ ョ ン が 暗 に 含 ま れ て い ま す 。 |
-files0-from file
検 索 開 始 ポ イ ン ト を 、 コ マ ン ド ラ イ ン か ら 指 定 さ れ た も の を 使 わ ず に 、 file か ら 読 み 込 み ま す 。 コ マ ン ド ラ イ ン か ら の 引 数 と し て 検 索 開 始 ポ イ ン ト を 指 定 す る こ と に は 、 一 定 の 制 約 が あ り ま し た 。 つ ま り フ ァ イ ル の 指 定 数 に 上 限 が あ っ た こ と で す 。 ま た オ プ シ ョ ン 名 と か ぶ る よ う な フ ァ イ ル 名 の 場 合 に 、 見 誤 っ て し ま う こ と が あ り ま し た 。 こ の オ プ シ ョ ン を 使 う と 、 find に 指 定 す る 検 索 開 始 ポ イ ン ト を 、 安 全 に ま た 任 意 の 数 だ け 受 け 渡 す こ と が で き ま す 。
こ の オ プ シ ョ ン を 用 い る こ と と 、 コ マ ン ド ラ イ ン か ら 検 索 開 始 ポ イ ン ト を 受 け 渡 す こ と は 、 互 い に 排 他 的 な 関 係 に あ り ま す 。 つ ま り 両 方 を 同 時 に 用 い る こ と は で き ま せ ん 。
引 数 file は 必 須 で す 。 検 索 開 始 ポ イ ン ト の 一 覧 を 標 準 入 力 ス ト リ ー ム か ら と る こ と は 可 能 で あ り 、 た と え ば パ イ プ を 使 っ て 受 け 渡 す こ と が で き ま す 。 そ の 場 合 、 ア ク シ ョ ン -ok と -okdir は 用 い る こ と が で き ま せ ん 。 こ れ ら は ユ ー ザ ー か ら の 入 力 確 認 を 行 う も の で あ る た め 、 標 準 入 力 か ら の 読 み 込 み と は 、 明 ら か に 相 容 れ な い も の に な る か ら で す 。
file 内 の 検 索 開 始 ポ イ ン ト は 、 ASCII NUL 文 字 に よ っ て 区 切 り ま す 。 2 つ の 連 続 し た NUL 文 字 、 つ ま り 検 索 開 始 ポ イ ン ト の フ ァ イ ル 名 の 長 さ が ゼ ロ で あ る も の は 、 指 定 す る こ と が で き ま せ ん 。 そ の 場 合 は エ ラ ー メ ッ セ ー ジ が 出 力 さ れ て 、 最 後 に ゼ ロ 以 外 の 終 了 コ ー ド が 返 さ れ ま す 。
指 定 さ れ た file が 空 の 場 合 、 find は 検 索 開 始 ポ イ ン ト が な い も の と し て 処 理 を す る た め 、 プ ロ グ ラ ム 引 数 を 解 析 し た 後 に 、 す ぐ に 終 了 し ま す 。 こ れ は 、 パ ス 引 数 が 受 け 渡 さ れ な か っ た 場 合 に 、 find の 標 準 的 な 呼 び 出 し を 行 え ば 、 カ レ ン ト デ ィ レ ク ト リ を 検 索 開 始 ポ イ ン ト と す る 動 作 と は 異 な る こ と に な り ま す 。
検 索 開 始 ポ イ ン ト か ら の 処 理 は 、 そ れ 以 外 の 点 で は 通 常 ど お り 行 わ れ ま す 。 つ ま り find は 特 に 指 示 が な い 限 り は 、 サ ブ デ ィ レ ク ト リ を 再 帰 的 に 処 理 し ま す 。 検 索 開 始 ポ イ ン ト だ け を 処 理 す る に は 、 さ ら に -maxdepth 0 を 指 定 す る こ と が で き ま す 。
さ ら に 注 意 点 で す 。 入 力 フ ァ イ ル 内 に 所 定 の フ ァ イ ル が 複 数 回 記 述 さ れ て い た 場 合 、 そ れ が 複 数 回 検 索 さ れ る こ と に な る か ど う か は 不 定 で す 。 find の 処 理 中 に file が 変 更 さ れ た 場 合 も 、 同 様 に 不 定 で す 。 ま た find が 終 了 す る 際 の 、 そ の 指 定 さ れ た file 内 の 検 索 位 置 も 、 終 了 方 法 が -quit で あ る か 別 の 方 法 で あ る か を 問 わ ず 、 不 定 と な り ま す 。 こ こ で "不 定 " と 言 っ て い る の は 、 動 作 す る し な い は 分 か ら ず 、 何 か 特 定 の 処 理 が な さ れ る か も し れ な い と い う こ と で あ り 、 そ の 動 作 は 、 プ ラ ッ ト フ ォ ー ム に よ っ て 変 わ る か も し れ な い し 、 findutils の リ リ ー ス に よ っ て 変 わ る か も し れ な い と い う こ と で す 。
-help, --help
find の コ マ ン ド ラ イ ン の 使 用 方 法 の 概 要 を 表 示 し て 終 了 し ま す 。
-ignore_readdir_race
通 常 find は 、 フ ァ イ ル 情 報 の 取 得 に 失 敗 し た と き に は 、 エ ラ ー メ ッ セ ー ジ を 出 力 し ま す 。 こ の オ プ シ ョ ン を 指 定 し た 場 合 、 デ ィ レ ク ト リ か ら フ ァ イ ル 名 を 読 み 込 ん だ と き と 、 フ ァ イ ル 情 報 を 取 得 し よ う と し た と き の 間 で 、 フ ァ イ ル が 削 除 さ れ て し ま っ て い て も 、 エ ラ ー は 表 示 さ れ ま せ ん 。 こ の 動 作 は 、 コ マ ン ド ラ イ ン 上 か ら 指 定 さ れ る フ ァ イ ル や デ ィ レ ク ト リ に 対 し て も 適 用 さ れ ま す 。 こ の オ プ シ ョ ン は 、 コ マ ン ド ラ イ ン か ら 読 み 込 み を 行 う 段 階 で 有 効 と な る の で 、 フ ァ イ ル シ ス テ ム の 一 部 に 対 し て 、 こ の オ プ シ ョ ン を オ ン と し 、 残 り の 部 分 は オ フ と す る よ う な 指 定 は で き ま せ ん 。 (こ れ を 実 現 し な け れ ば な ら な い 場 合 は 、 find コ マ ン ド を 2 つ 実 行 す る こ と が 必 要 で す 。 1 つ は 本 オ プ シ ョ ン を オ ン に し て 、 も う 1 つ は オ フ に し て 実 行 し ま す 。 )
さ ら に 、 -ignore_readdir_race オ プ シ ョ ン を 指 定 し た find の 実 行 で は 、 親 デ ィ レ ク ト リ を 読 み 込 ん だ 後 に 、 対 象 フ ァ イ ル が 消 失 し て い る 状 況 が 発 生 し た 場 合 、 -delete ア ク シ ョ ン か ら の エ ラ ー も 無 視 し ま す 。 そ の 場 合 に は 、 診 断 エ ラ ー は 出 力 さ れ ず 、 -delete ア ク シ ョ ン か ら の 返 り 値 も true に な り ま す 。
-maxdepth levels
検 索 開 始 ポ イ ン ト か ら 最 大 で 、 levels で 示 さ れ る 階 層 数 の デ ィ レ ク ト リ ま で 検 索 し ま す ( levels は 負 で は な い 整 数 で す )。 -maxdepth 0 を 指 定 す る と 、 テ ス ト や ア ク シ ョ ン の 対 象 は 、 検 索 開 始 ポ イ ン ト だ け に な り ま す 。
-mindepth levels
検 索 開 始 ポ イ ン ト か ら levels で 示 さ れ る 階 層 数 の デ ィ レ ク ト リ に 至 る ま で は 、 テ ス ト や ア ク シ ョ ン を 適 用 し ま せ ん ( levels は 負 で は な い 整 数 で す 。 )。 -mindepth 1 を 指 定 す る と 、 検 索 開 始 ポ イ ン ト を 除 い た フ ァ イ ル を 、 す べ て 処 理 す る こ と に な り ま す 。
|
-mount |
フ ァ イ ル シ ス テ ム が 異 な る 場 合 は 、 デ ィ レ ク ト リ を 検 索 し ま せ ん 。 こ れ は -xdev の 別 名 で あ り 、 バ ー ジ ョ ン が 異 な る find と の 互 換 性 の た め に 設 け ら れ て い ま す 。 |
-noignore_readdir_race
-ignore_readdir_race の 効 果 を 無 効 に し ま す 。
-noleaf
デ ィ レ ク ト リ に 含 ま れ る サ ブ デ ィ レ ク ト リ 数 が 、 ハ ー ド リ ン ク 数 よ り も 2 つ 少 な い 、 と す る 想 定 の も と で の 最 適 化 を 無 効 に し ま す 。 こ の オ プ シ ョ ン が 必 要 に な る の は 、 Unix の デ ィ レ ク ト リ と リ ン ク に 関 す る 慣 例 に 従 っ て い な い フ ァ イ ル シ ス テ ム 、 た と え ば CD-ROM、 MS-DOS フ ァ イ ル シ ス テ ム 、 AFS ボ リ ュ ー ム マ ウ ン ト ポ イ ン ト を 検 索 す る 場 合 で す 。 通 常 の Unix フ ァ イ ル シ ス テ ム に お い て は 、 各 デ ィ レ ク ト リ に 最 低 で も 2 つ の ハ ー ド リ ン ク が あ り ま す 。 デ ィ レ ク ト リ 名 そ の も の と 、 ‘.’ エ ン ト リ で す 。 そ し て サ ブ デ ィ レ ク ト リ が あ る 場 合 に 、 そ の サ ブ デ ィ レ ク ト リ に は 、 親 デ ィ レ ク ト リ に リ ン ク す る ‘..’ と い う エ ン ト リ が あ り ま す 。 そ こ で find が デ ィ レ ク ト リ を 調 べ る 際 に 、 デ ィ レ ク ト リ へ の リ ン ク 数 よ り も 2 つ 分 だ け 少 な い サ ブ デ ィ レ ク ト リ を 調 べ た 後 で あ れ ば 、 デ ィ レ ク ト リ 内 の 残 り の エ ン ト リ は 、 デ ィ レ ク ト リ で は な い (デ ィ レ ク ト リ ツ リ ー 内 の 「 葉 」 (leaf) フ ァ イ ル で あ る ) こ と が 決 定 し ま す 。 フ ァ イ ル 名 を 調 べ る だ け で 十 分 で あ れ ば 、 フ ァ イ ル 情 報 を 調 べ る 必 要 が な く な る の で 、 こ れ を 利 用 す れ ば 、 検 索 速 度 が 明 ら か に 向 上 し ま す 。
-version, --version
find の バ ー ジ ョ ン を 表 示 し て 終 了 し ま す 。
|
-xdev |
異 な る フ ァ イ ル シ ス テ ム の デ ィ レ ク ト リ を 検 索 し ま せ ん 。 |
テ ス ト (test)
テ ス ト の 中 に は 、 -newerXY や -samefile の よ う に 、 そ の 時 点 で 対 象 と な っ て い る フ ァ イ ル と 、 コ マ ン ド ラ イ ン か ら 指 定 す る 参 照 フ ァ イ ル (reference file) と の 間 で 、 比 較 を 行 う も の が あ り ま す 。 そ の よ う な テ ス ト が 指 定 さ れ た 際 に 、 参 照 フ ァ イ ル に 対 す る 解 釈 は 、 -H , -L , -P と い っ た オ プ シ ョ ン や 、 先 行 す る -follow の 存 在 に よ っ て 決 定 し ま す 。 た だ し 、 参 照 フ ァ イ ル が 調 べ ら れ る の は 、 コ マ ン ド ラ イ ン が 解 析 さ れ る と き の 1 回 だ け で す 。 参 照 フ ァ イ ル が 調 べ ら れ な か っ た 場 合 (た と え ば 、 stat (2) シ ス テ ム コ ー ル に 失 敗 し た 場 合 )、 エ ラ ー メ ッ セ ー ジ が 出 力 さ れ て 、 find は 0 以 外 の ス テ ー タ ス を 返 し て 終 了 し ま す 。
数 値 引 数 で あ る n は 、 以 下 の テ ス ト 、 -amin , -mtime , -gid , -inum , -links , -size , -uid , -used に お い て 指 定 で き ま す 。 そ し て 以 下 の よ う な 指 定 方 法 が あ り ま す 。
|
+n |
n よ り 大 き い 。 |
|||
|
-n |
n よ り 小 さ い 。 |
|||
|
n |
n に ち ょ う ど 等 し い 。 |
サ
ポ ー ト さ れ て
い る テ ス ト :
-amin
n
フ ァ イ ル の 最 終 ア ク セ ス 時 間 が 、 n 分 前 と 比 較 し て 、 そ れ よ り も 前 か 後 か ち ょ う ど 同 じ か を テ ス ト し ま す 。
-anewer reference
現 在 フ ァ イ ル の 最 終 ア ク セ ス 時 間 が 、 reference (参 照 フ ァ イ ル ) の 最 終 更 新 時 間 よ り も 、 新 し い か ど う か を テ ス ト し ま す 。 引 数 reference が シ ン ボ リ ッ ク リ ン ク で あ り 、 -H や -L オ プ シ ョ ン が 有 効 に な っ て い る 場 合 は 、 リ ン ク 先 フ ァ イ ル の 最 終 更 新 時 間 が 常 に 利 用 さ れ ま す 。
-atime n
フ ァ イ ル の 最 終 ア ク セ ス 時 間 が 、 n *24 時 間 前 と 比 較 し て 、 そ れ よ り も 前 か 後 か ち ょ う ど 同 じ か を テ ス ト し ま す 。 フ ァ イ ル の 最 終 ア ク セ ス 時 間 が 、 24 時 間 の 何 倍 で あ る か を 割 り 算 し て 計 算 す る 際 に 、 端 数 は 無 視 さ れ ま す 。 し た が っ て 、 -atime +1 に 一 致 す る た め に は 、 フ ァ イ ル は 少 な く と も 2 日 前 に ア ク セ ス さ れ て い な け れ ば な り ま せ ん 。
-cmin n
フ ァ イ ル ス テ ー タ ス の 最 終 変 更 時 間 が 、 n 分 前 と 比 較 し て 、 そ れ よ り も 前 か 後 か ち ょ う ど 同 じ か を テ ス ト し ま す 。
-cnewer reference
現 在 フ ァ イ ル の 最 終 ス テ ー タ ス 変 更 時 間 が 、 reference (参 照 フ ァ イ ル ) の 最 終 更 新 時 間 よ り も 、 新 し い か ど う か を テ ス ト し ま す 。 引 数 reference が シ ン ボ リ ッ ク リ ン ク で あ り 、 -H や -L オ プ シ ョ ン が 有 効 に な っ て い る 場 合 は 、 リ ン ク 先 フ ァ イ ル の 最 終 更 新 時 間 が 常 に 利 用 さ れ ま す 。
-ctime n
フ ァ イ ル ス テ ー タ ス の 最 終 変 更 時 間 が 、 n *24 時 間 前 と 比 較 し て 、 そ れ よ り も 前 か 後 か ち ょ う ど 同 じ か を テ ス ト し ま す 。 フ ァ イ ル ス テ ー タ ス の 更 新 時 間 の 解 釈 に あ た っ て 、 丸 め 処 理 が ど の よ う に 影 響 す る か に つ い て は 、 -atime の 説 明 を 参 照 し て く だ さ い 。
|
-empty |
フ ァ イ ル が 空 で あ っ て 、 通 常 の フ ァ イ ル か デ ィ レ ク ト リ で あ る か ど う か を テ ス ト し ま す 。 |
-executable
実 行 可 能 な フ ァ イ ル か 、 あ る い は 、 現 在 の ユ ー ザ ー が (フ ァ イ ル 名 解 決 の 観 点 で ) 検 索 可 能 な デ ィ レ ク ト リ で あ る か ど う か を テ ス ト し ま す 。 こ の テ ス ト は 、 ア ク セ ス コ ン ト ロ ー ル リ ス ト (access control list; ACL) や 、 こ の 他 の パ ー ミ ッ シ ョ ン 機 能 を 考 慮 し ま す 。 ち な み に 、 テ ス ト -perm で は 無 視 さ れ ま す 。 本 テ ス ト は 、 シ ス テ ム コ ー ル access (2) を 利 用 す る の で 、 NFS サ ー バ ー が UID マ ッ ピ ン グ (つ ま り root squash) を 行 っ て い る 場 合 に 、 適 切 に 動 作 し な い 場 合 が あ り ま す 。 多 く の シ ス テ ム で は 、 ク ラ イ ア ン ト の カ ー ネ ル に お い て access (2) を 実 装 し て い る た め 、 サ ー バ ー 側 に あ る UID マ ッ ピ ン グ 情 報 を 利 用 で き な い か ら で す 。 こ の テ ス ト は 、 access (2) シ ス テ ム コ ー ル の 結 果 だ け に 基 づ い て い る た め 、 こ の テ ス ト が true と な っ た フ ァ イ ル が 、 実 際 に 実 行 で き る か ど う か の 保 証 は あ り ま せ ん 。
|
-false |
必 ず false を 返 し ま す 。 |
-fstype type
フ ァ イ ル が 存 在 す る フ ァ イ ル シ ス テ ム が 、 type か ど う か を テ ス ト し ま す 。 い ろ い ろ な Unix シ ス テ ム に 対 し て 、 有 効 な フ ァ イ ル シ ス テ ム は 変 わ り ま す 。 Unix な ど の 各 種 シ ス テ ム に お い て 、 許 容 さ れ る フ ァ イ ル シ ス テ ム タ イ プ を 、 そ の 一 部 だ け あ げ て み る と 、 ufs, 4.2, 4.3, nfs, tmp, mfs, S51K, S52K と い っ た も の で す 。 -printf の デ ィ レ ク テ ィ ブ %F を 使 え ば 、 現 在 の フ ァ イ ル シ ス テ ム タ イ プ を 確 認 す る こ と が で き ま す 。
|
-gid n |
フ ァ イ ル の グ ル ー プ ID 番 号 が 、 n と 比 較 し て 、 そ れ よ り も 小 さ い か 大 き い か ち ょ う ど 同 じ か を テ ス ト し ま す 。 |
-group gname
フ ァ イ ル の 属 す る グ ル ー プ が gname か ど う か を テ ス ト し ま す (グ ル ー プ ID 番 号 に よ る 指 定 も 可 )。
-ilname pattern
-lname と 同 様 で す が 、 大 文 字 小 文 字 は 区 別 し ま せ ん 。 -L ま た は -follow オ プ シ ョ ン が 有 効 な 場 合 、 シ ン ボ リ ッ ク リ ン ク が 切 れ て い な い 限 り 、 こ の テ ス ト は false を 返 し ま す 。
-iname pattern
-name と 同 様 で す が 、 大 文 字 小 文 字 は 区 別 し ま せ ん 。 た と え ば 、 パ タ ー ン ‘fo*’ や ‘F??’ は 、 ‘Foo’, ‘FOO’, ‘foo’, ‘fOo’ な ど の フ ァ イ ル 名 に 一 致 し ま す 。 ま た 、 パ タ ー ン ‘*foo*’ は 、 ‘.foobar’ と い う フ ァ イ ル に も 一 致 し ま す 。
-inum n
フ ァ イ ル の i ノ ー ド 番 号 が 、 n と 比 較 し て 、 そ れ よ り も 小 さ い か 大 き い か ち ょ う ど 同 じ か を テ ス ト し ま す 。 普 通 は こ れ よ り も 、 -samefile を 使 っ た 方 が 簡 単 で す 。
-ipath pattern
-path と 同 様 で す 。 た だ し 大 文 字 小 文 字 を 区 別 し ま せ ん 。
-iregex pattern
-regex と 同 様 で す 。 た だ し 大 文 字 小 文 字 を 区 別 し ま せ ん 。
-iwholename pattern
-ipath を 参 照 し て く だ さ い 。 こ の 別 名 は 、 -ipath よ り も 移 植 性 に 劣 り ま す 。
-links n
フ ァ イ ル が 持 つ ハ ー ド リ ン ク の 数 が 、 n と 比 較 し て 、 小 さ い か 大 き い か ち ょ う ど 同 じ か を テ ス ト し ま す 。
-lname pattern
フ ァ イ ル が シ ン ボ リ ッ ク リ ン ク で あ っ て 、 そ の 内 容 が シ ェ ル パ タ ー ン pattern に 一 致 す る か ど う か を テ ス ト し ま す 。 メ タ 文 字 は 、 ‘/’ や ‘.’ を 特 別 扱 い し ま せ ん 。 -L ま た は -follow オ プ シ ョ ン が 有 効 な 場 合 に は 、 シ ン ボ リ ッ ク リ ン ク が 切 れ て い な い 限 り 、 こ の テ ス ト は false を 返 し ま す 。
-mmin n
フ ァ イ ル の 最 終 更 新 時 間 が 、 n 分 前 と 比 較 し て 、 そ れ よ り も 前 か 後 か ち ょ う ど 同 じ か を テ ス ト し ま す 。
-mtime n
フ ァ イ ル の 最 終 更 新 時 間 が 、 n *24 時 間 前 と 比 較 し て 、 そ れ よ り も 前 か 後 か ち ょ う ど 同 じ か を テ ス ト し ま す 。 何 日 前 か を 計 算 す る 際 、 時 間 差 を 24 時 間 で 割 っ た 結 果 を 丸 め る た め 、 フ ァ イ ル 更 新 時 間 の 解 釈 に あ た っ て 、 そ の 処 理 が ど の よ う に 影 響 す る か に つ い て は 、 -atime の 説 明 を 参 照 し て く だ さ い 。
-name pattern
フ ァ イ ル の ベ ー ス 名 (パ ス 名 か ら 、 先 行 す る デ ィ レ ク ト リ を 取 り 除 い た も の ) が 、 シ ェ ル の パ タ ー ン pattern に 一 致 す る か ど う か を テ ス ト し ま す 。 先 行 す る デ ィ レ ク ト リ を 取 り 除 い て い る の で 、 -name を 使 っ て 一 致 の 確 認 を 行 う フ ァ イ ル 名 に は 、 ス ラ ッ シ ュ が 含 ま れ な い も の と し て 扱 わ れ ま す 。 つ ま り ‘-name a/b’ と し て も 、 一 致 す る も の は あ り ま せ ん (そ の 場 合 は 、 お そ ら く -path を 用 い る 必 要 が あ り ま す )。 こ れ を 行 っ て し ま っ た 場 合 、 環 境 変 数 POSIXLY_CORRECT が 設 定 さ れ て い な い 限 り は 、 警 告 メ ッ セ ー ジ が 出 力 さ れ ま す 。 メ タ 文 字 (‘*’, ‘?’, ‘[]’) は 、 ベ ー ス 名 の 先 頭 に あ る ‘.’ に 一 致 し ま す (こ れ は findutils-4.2.2 か ら 変 更 さ れ ま し た 。 以 降 の セ ク シ ョ ン 「 規 格 へ の 準 拠 」 を 参 照 し て く だ さ い )。 1 つ の デ ィ レ ク ト リ と そ こ に 含 ま れ る フ ァ イ ル を 無 視 し た い 場 合 は 、 デ ィ レ ク ト リ ツ リ ー 内 の 全 フ ァ イ ル を 確 認 す る の で は な く 、 -prune を 使 い ま す 。 -prune の 説 明 に お い て 、 例 を 説 明 し て い る の で 参 照 し て く だ さ い 。 波 カ ッ コ (’{}’) は 、 特 別 な 文 字 と し て は 扱 わ れ ま せ ん 。 bash な ど の シ ェ ル に お い て は 、 シ ェ ル パ タ ー ン 内 の 波 カ ッ コ に 特 別 な 意 味 を 持 つ も の が あ り ま す が 、 こ の 点 は 異 な り ま す 。 フ ァ イ ル 名 の マ ッ チ ン グ は 、 fnmatch (3) ラ イ ブ ラ リ 関 数 を 用 い て 行 わ れ ま す 。 シ ェ ル に よ っ て パ タ ー ン が 展 開 さ れ な い よ う に 、 パ タ ー ン は ク ォ ー ト で 囲 む こ と を 忘 れ な い で く だ さ い 。
-newer reference
対 象 フ ァ イ ル の 最 終 更 新 時 間 が 、 reference フ ァ イ ル の 最 終 更 新 時 間 よ り も 、 最 新 で あ る か ど う か を テ ス ト し ま す 。 reference が シ ン ボ リ ッ ク リ ン ク で あ っ て 、 -H ま た は -L オ プ シ ョ ン が 有 効 で あ る 場 合 は 、 リ ン ク 先 フ ァ イ ル の 更 新 時 間 が 用 い ら れ ま す 。
-newerXY reference
対 象 フ ァ イ ル の タ イ ム ス タ ン プ X が 、 reference フ ァ イ ル の タ イ ム ス タ ン プ Y よ り 、 新 し い か ど う か を テ ス ト し ま す 。 X と Y の 位 置 に 記 述 す る 文 字 は 、 以 下 の 文 字 と し ま す 。
組 み 合 わ せ に よ っ て は 、 無 効 に な る も の も 発 生 し ま す 。 た と え ば 、 X に t を 指 定 し て も 無 効 で す 。 ま た シ ス テ ム に よ っ て は 、 特 定 の 組 み 合 わ せ を 実 装 し て い な い 場 合 が あ り ま す 。 た と え ば B は 、 す べ て の シ ス テ ム で サ ポ ー ト さ れ て い る わ け で は あ り ま せ ん 。 指 定 さ れ た XY の 組 み 合 わ せ が 、 無 効 や 未 サ ポ ー ト の 場 合 は 、 致 命 的 エ ラ ー が 発 生 し ま す 。 時 間 表 現 は 、 GNU date に お け る -d オ プ シ ョ ン に 対 す る 引 数 と 同 様 の も の と し て 解 釈 さ れ ま す 。 参 照 フ ァ イ ル の 生 成 時 間 を 使 用 し よ う と て 、 そ の 生 成 時 間 が 決 定 で き な か っ た 場 合 は 、 致 命 的 エ ラ ー に な り ま す 。 ま た 、 対 象 フ ァ イ ル の 生 成 時 間 を 参 照 す る テ ス ト を 用 い た 際 に 、 生 成 時 間 が 不 明 な 場 合 は 、 そ の テ ス ト は 失 敗 し ま す 。
-nogroup
フ ァ イ ル の グ ル ー プ ID 番 号 が 、 シ ス テ ム に 存 在 し て い な い こ と を テ ス ト し ま す 。
-nouser
フ ァ イ ル の ユ ー ザ ー ID 番 号 が 、 シ ス テ ム に 存 在 し な い こ と を テ ス ト し ま す 。
-path pattern
フ ァ イ ル 名 が 、 シ ェ ル の パ タ ー ン pattern に 一 致 す る か ど う か を テ ス ト し ま す 。 メ タ 文 字 は 、 ‘/’ や ‘.’ を 特 別 扱 い し ま せ ん 。 し た が っ て た と え ば 、
find . -path "./sr*sc"
は 、 ./src/misc と い う デ ィ レ ク ト リ (そ れ が 存 在 し て い る 場 合 ) の 内 容 を 表 示 し ま す 。 デ ィ レ ク ト リ ツ リ ー 全 体 を 対 象 と し な い の で あ れ ば 、 ツ リ ー 内 の 各 フ ァ イ ル を 確 認 し て い く の で は な く 、 -prune を 用 い ま す 。 パ タ ー ン 一 致 を 確 認 す る よ う な テ ス ト は 、 フ ァ イ ル 名 す べ て に 対 し て 適 用 さ れ ま す 。 つ ま り そ の フ ァ イ ル 名 は 、 コ マ ン ド ラ イ ン 上 か ら 指 定 さ れ た 検 索 開 始 点 か ら 始 ま る 、 検 索 対 象 す べ て で す 。 こ の パ タ ー ン に お い て 、 絶 対 パ ス を 指 定 す る な ら 、 検 索 開 始 点 も 絶 対 パ ス で な け れ ば 意 味 が あ り ま せ ん 。 つ ま り 以 下 の よ う な コ マ ン ド で は 、 ど の フ ァ イ ル も 一 致 し ま せ ん 。
find bar -path /foo/bar/myfile -print
find が -path の 引 数 と 比 較 す る の は 、 そ の 時 点 で 対 象 と し て い る フ ァ イ ル の デ ィ レ ク ト リ と ベ ー ス 名 を 連 結 し た 文 字 列 で す 。 そ の 文 字 列 の 末 尾 が ス ラ ッ シ ュ に な る こ と は な い た め 、 -path の 引 数 の 末 尾 に ス ラ ッ シ ュ を 指 定 す る と 、 何 に も 一 致 し な い こ と に な り ま す 。 (た だ し 、 コ マ ン ド ラ イ ン で 指 定 さ れ た 検 索 開 始 ポ イ ン ト に は 、 お そ ら く 一 致 し ま す )。 述 語 表 現 -path は 、 HP-UX の find で も サ ポ ー ト さ れ て い て 、 POSIX 2008 規 格 に 存 在 し ま す 。
-perm mode
フ ァ イ ル の 許 可 属 性 が mode (8 進 数 表 現 ま た は シ ン ボ ル 表 現 ) に 一 致 す る か ど う か を テ ス ト し ま す 。 mode 指 定 の こ の 形 式 で は 、 完 全 一 致 が 求 め ら れ る の で 、 こ の 形 式 を シ ン ボ リ ッ ク モ ー ド で 使 う 場 合 に は 、 モ ー ド 文 字 列 の 指 定 が 多 少 複 雑 に な る か も し れ ま せ ん 。 た と え ば ‘-perm g=w’ は 、 許 可 属 性 が 0020 の フ ァ イ ル に の み 一 致 し ま す (つ ま り 、 グ ル ー プ の 書 き 込 み 権 限 の み を 設 定 し ま す )。 お そ ら く 、 ‘/’ や ‘-’ を 用 い る 形 式 を 必 要 と す る こ と が あ り ま す 。 た と え ば 、 ‘-perm -g=w’ と す れ ば 、 グ ル ー プ の 書 き 込 み 許 可 が あ る フ ァ イ ル に 一 致 し ま す 。 具 体 例 に つ い て は 「 例 」 セ ク シ ョ ン を 参 照 し て く だ さ い 。
-perm - mode
mode で 指 定 し た 許 可 属 性 ビ ッ ト す べ て が 、 対 象 フ ァ イ ル の も の に 一 致 す る か ど う か を テ ス ト し ま す 。 こ の 形 式 で も 、 シ ン ボ リ ッ ク モ ー ド 指 定 が 可 能 で す 。 こ の モ ー ド は 、 ご く 普 通 に 用 い た く な る は ず で す 。 シ ン ボ リ ッ ク モ ー ド で は 、 ‘u’、 ‘g’、 ‘o’ を 用 い る 必 要 が あ り ま す 。 具 体 例 に つ い て は 「 例 」 セ ク シ ョ ン を 参 照 し て く だ さ い 。
-perm / mode
mode で 指 定 し た 許 可 属 性 ビ ッ ト の 一 部 が 、 対 象 フ ァ イ ル の も の に 一 致 す る か ど う か を テ ス ト し ま す 。 こ の 形 式 で も 、 シ ン ボ リ ッ ク モ ー ド 指 定 が 可 能 で す 。 シ ン ボ リ ッ ク モ ー ド で は 、 ‘u’、 ‘g’、 ‘o’ を 用 い る 必 要 が あ り ま す 。 具 体 例 に つ い て は 「 例 」 セ ク シ ョ ン を 参 照 し て く だ さ い 。 な お 、 mode の 許 可 属 性 ビ ッ ト が 何 も 設 定 さ れ て い な い 場 合 、 こ の テ ス ト は 、 ど ん な フ ァ イ ル に も 一 致 し ま す (こ の 動 作 は 、 -perm -000 と 一 貫 性 を 持 た せ る た め で す )。
-perm + mode
こ の 書 式 は 、 も う サ ポ ー ト さ れ て い ま せ ん (2005 年 以 来 、 非 推 奨 と な っ て い ま す )。 代 わ り に -perm / mode を 用 い て く だ さ い 。
-readable
現 在 の ユ ー ザ ー に よ っ て 読 み 込 み 可 能 な フ ァ イ ル で あ る か ど う か を テ ス ト し ま す 。 こ の テ ス ト は 、 ア ク セ ス コ ン ト ロ ー ル リ ス ト (access control list; ACL) や 、 そ の 他 の パ ー ミ ッ シ ョ ン 機 能 を 考 慮 し ま す 。 ち な み に 、 テ ス ト -perm で は 無 視 さ れ ま す 。 本 テ ス ト は 、 シ ス テ ム コ ー ル access (2) を 利 用 す る の で 、 NFS サ ー バ ー が UID マ ッ ピ ン グ (つ ま り root squash) を 行 っ て い る 場 合 に 、 適 切 に 動 作 し な い 場 合 が あ り ま す 。 多 く の シ ス テ ム で は 、 ク ラ イ ア ン ト の カ ー ネ ル に お い て access (2) を 実 装 し て い る た め 、 サ ー バ ー 側 に あ る UID マ ッ ピ ン グ 情 報 を 利 用 で き な い か ら で す 。
-regex pattern
フ ァ イ ル 名 が 正 規 表 現 pattern に 一 致 す る か ど う か を テ ス ト し ま す 。 こ の 処 理 は 、 パ ス 全 体 へ の 一 致 を 確 認 す る も の で あ っ て 、 フ ァ イ ル 検 索 で は あ り ま せ ん 。 し た が っ て た と え ば 、 ‘./fubar3’ フ ァ イ ル に 一 致 す る 正 規 表 現 と し て 、 ‘.*bar.’ や ‘.*b.*3’ は 利 用 で き ま す が 、 ‘f.*r3’ は 利 用 で き ま せ ん 。 find が 扱 う 正 規 表 現 の デ フ ォ ル ト は 、 Emacs 正 規 表 現 で す (’.’ が 改 行 に 一 致 す る 点 は 除 き ま す )。 こ れ は 、 -regextype オ プ シ ョ ン を 用 い て 変 更 す る こ と が で き ま す 。
-samefile name
対 象 フ ァ イ ル が 、 name と 同 じ i ノ ー ド を 参 照 し て い る か ど う か を テ ス ト し ま す 。 -L が 有 効 で あ れ ば 、 シ ン ボ リ ッ ク リ ン ク を 対 象 と す る こ と が で き ま す 。
-size n [cwbkMG]
フ ァ イ ル が n 単 位 分 の 容 量 と 比 較 し て 、 そ れ よ り も 小 さ い か 大 き い か ち ょ う ど 同 じ か を テ ス ト し ま す 。 こ こ で は 丸 め 処 理 が 行 わ れ ま す 。 以 下 の サ フ ィ ッ ク ス が 利 用 で き ま す 。
|
‘b’ |
512 バ イ ト ブ ロ ッ ク を 表 し ま す (サ フ ィ ッ ク ス の 指 定 が な い 場 合 は 、 こ れ が デ フ ォ ル ト と な り ま す )。 |
||
|
‘c’ |
バ イ ト を 表 し ま す 。 |
||
|
‘w’ |
2 バ イ ト ワ ー ド を 表 し ま す 。 |
||
|
‘k |
キ ビ バ イ ト を 表 し ま す (kibibyte, KiB, 1024 バ イ ト 単 位 )。 |
||
|
‘M’ |
メ ビ バ イ ト を 表 し ま す (mebibyte, MiB, 1024 * 1024 単 位 = 1048576 バ イ ト )。 |
||
|
‘G’ |
ギ ビ バ イ ト を 表 し ま す (gibibyte, GiB, 1024 * 1024 * 1024 単 位 = 10737418241073741824)。 |
サ イ ズ と い う の は 単 純 に 、 シ ス テ ム コ ー ル の lstat (あ る い は stat) に 含 ま れ て い る struct stat の メ ン バ ー st_size の こ と で あ り 、 上 に 示 す よ う に し て 切 り 上 げ ら れ ま す 。 言 い 換 え る と 、 そ の 結 果 は ls -l で 得 ら れ る も の と 一 致 し ま す 。 -printf に お け る ‘%k’ と ‘%b’ の 書 式 指 定 子 は 、 ス パ ー ス フ ァ イ ル に 対 し て 、 異 な る 扱 い を す る 点 に 注 意 し て く だ さ い 。 サ フ ィ ッ ク ス ‘b’ は 、 常 に 512 バ イ ト ブ ロ ッ ク を 表 し て い て 、 1024 バ イ ト ブ ロ ッ ク を 表 す こ と は あ り ま せ ん 。 こ の 点 は 、 -ls の 動 作 と は 異 な る と こ ろ で す 。
プ レ フ ィ ッ ク ス の + と - は 、 ご く 普 通 に 、 そ れ よ り 上 、 そ れ よ り 下 、 を 表 し ま す 。 し た が っ て 、 n と ち ょ う ど 同 じ 数 に は 一 致 し ま せ ん 。 サ イ ズ と は 、 次 の 数 単 位 に 向 け て 切 り 上 げ ら れ る こ と に 注 意 し て く だ さ い 。 つ ま り -size -1M と い う の は 、 -size -1048576c と 同 じ で は あ り ま せ ん 。 前 者 は 、 空 の フ ァ イ ル に し か 一 致 し ま せ ん 。 ま た 後 者 は 、 バ イ ト サ イ ズ が 0 か ら 1,048,575 ま で の フ ァ イ ル に 一 致 し ま す 。
|
-true |
常 に true で す 。 |
-type c
フ ァ イ ル タ イ プ が c で あ る か ど う か を テ ス ト し ま す 。
|
b |
ブ ロ ッ ク ス ペ シ ャ ル フ ァ イ ル (バ ッ フ ァ ー あ り ) |
||
|
c |
キ ャ ラ ク タ ー ス ペ シ ャ ル フ ァ イ ル (バ ッ フ ァ ー な し ) |
||
|
d |
デ ィ レ ク ト リ |
||
|
p |
名 前 付 き パ イ プ (FIFO) |
||
|
f |
通 常 の フ ァ イ ル |
||
|
l |
シ ン ボ リ ッ ク リ ン ク 。 オ プ シ ョ ン -L や -follow が 有 効 な 場 合 、 シ ン ボ リ ッ ク リ ン ク 切 れ の 場 合 を 除 い て 、 こ の テ ス ト が true に な る こ と は あ り ま せ ん 。 -L が 有 効 な と き に 、 シ ン ボ リ ッ ク リ ン ク を 検 索 す る に は 、 -xtype を 用 い て く だ さ い 。 |
||
|
s |
ソ ケ ッ ト |
||
|
D |
ド ア (door) (Solaris の 場 合 ) |
一 度 に 複 数 の フ ァ イ ル タ イ プ を 検 索 し た い 場 合 は 、 タ イ プ を 表 す 英 字 を 、 カ ン マ ‘,’ で 区 切 っ た リ ス ト で 指 定 し ま す 。 (GNU 拡 張 )
|
-uid n |
フ ァ イ ル 所 有 者 の ユ ー ザ ー ID 番 号 が 、 n と 比 較 し て 、 そ れ よ り も 小 さ い か 大 き い か ち ょ う ど 同 じ か を テ ス ト し ま す 。 |
-used n
フ ァ イ ル の ス テ ー タ ス が 変 更 さ れ て か ら 、 フ ァ イ ル に ア ク セ ス し た 最 終 時 間 が 、 n 日 間 と 比 較 し て 、 小 さ い か 大 き い か ち ょ う ど 同 じ か を テ ス ト し ま す 。
-user uname
フ ァ イ ル の 所 有 者 が 、 uname と い う ユ ー ザ ー で あ る か ど う か を テ ス ト し ま す (ユ ー ザ ー ID 番 号 に よ る 指 定 も 可 )。
-wholename pattern
-path を 参 照 し て く だ さ い 。 こ の 別 名 は 、 -path よ り も 移 植 性 に 劣 り ま す 。
-writable
現 在 の ユ ー ザ ー に よ っ て 書 き 込 み 可 能 な フ ァ イ ル で あ る か ど う か を テ ス ト し ま す 。 こ の テ ス ト は 、 ア ク セ ス コ ン ト ロ ー ル リ ス ト (access control list; ACL) や 、 そ の 他 の パ ー ミ ッ シ ョ ン 機 能 を 考 慮 し ま す 。 ち な み に 、 テ ス ト -perm で は 無 視 さ れ ま す 。 本 テ ス ト は 、 シ ス テ ム コ ー ル access (2) を 利 用 す る の で 、 NFS サ ー バ ー が UID マ ッ ピ ン グ (つ ま り root squash) を 行 っ て い る 場 合 に 、 適 切 に 動 作 し な い 場 合 が あ り ま す 。 多 く の シ ス テ ム で は 、 ク ラ イ ア ン ト の カ ー ネ ル に お い て access (2) を 実 装 し て い る た め 、 サ ー バ ー 側 に あ る UID マ ッ ピ ン グ 情 報 を 利 用 で き な い か ら で す 。
-xtype c
対 象 フ ァ イ ル が シ ン ボ リ ッ ク リ ン ク で な け れ ば 、 -type と 同 様 で す 。 シ ン ボ リ ッ ク リ ン ク の と き は 、 以 下 の よ う に 動 作 し ま す 。 -H や -P オ プ シ ョ ン の 指 定 時 は 、 リ ン ク 先 が タ イ プ c の フ ァ イ ル で あ れ ば 、 true を 返 し ま す 。 -L オ プ シ ョ ン の 指 定 時 は 、 c が ‘l’ な ら ば true を 返 し ま す 。 言 い 換 え る と 、 シ ン ボ リ ッ ク リ ン ク に 対 し て 、 -xtype は 、 -type が チ ェ ッ ク し な い フ ァ イ ル タ イ プ を チ ェ ッ ク し ま す 。
-context pattern
(SELinux 有 効 時 の み ) 対 象 フ ァ イ ル の セ キ ュ リ テ ィ コ ン テ キ ス ト が glob パ タ ー ン pattern に 一 致 す る か ど う か を テ ス ト し ま す 。
ア ク シ ョ ン
-delete
フ ァ イ ル ま た は デ ィ レ ク ト リ を 削 除 し ま す 。 削 除 に 成 功 す る と true を 返 し ま す 。 削 除 に 失 敗 し た 場 合 は 、 エ ラ ー メ ッ セ ー ジ を 表 示 し て 、 ゼ ロ 以 外 の 終 了 ス テ ー タ ス を 返 し ま す (最 終 終 了 す る と き で す )。
警 告 : find は コ マ ン ド ラ イ ン を 式 と し て 評 価 す る 点 を 忘 れ な い で く だ さ い 。 し た が っ て -delete を 一 番 初 め に 記 述 す る と 、 そ れ は find に 対 し て 、 検 索 開 始 ポ イ ン ト 以 下 の も の を す べ て 削 除 さ せ る こ と に な り ま す 。
コ マ ン ド ラ イ ン か ら -delete オ プ シ ョ ン を 指 定 す る と 、 自 動 的 に -depth オ プ シ ョ ン が オ ン と な り ま す 。 一 方 で -depth は -prune を 無 効 に す る の で 、 -delete ア ク シ ョ ン は -prune と 同 時 に 用 い る こ と は で き ま せ ん 。
ユ ー ザ ー の 中 で は よ く 、 コ マ ン ド ラ イ ン 上 に お い て -delete の 前 に -print を 指 定 し て 、 削 除 が 実 際 に ど の よ う に 行 わ れ る か を テ ス ト し よ う と し ま す 。 予 期 し な い 結 果 を 起 こ さ な い た め に も 、 そ の よ う な テ ス ト を 行 う と き か ら 、 -depth オ プ シ ョ ン を 明 示 的 に 指 定 す る こ と を 忘 れ な い で く だ さ い 。
-delete ア ク シ ョ ン は 、 デ ィ レ ク ト リ が 空 で な い 場 合 に は 削 除 に 失 敗 し ま す 。
-ignore_readdir_race オ プ シ ョ ン と と も に 、 こ の オ プ シ ョ ン を 指 定 し 、 さ ら に 、 親 デ ィ レ ク ト リ を 読 み 込 ん だ 後 に 、 対 象 フ ァ イ ル が 消 失 し て い る 状 況 が 発 生 し た 場 合 、 -delete ア ク シ ョ ン か ら の エ ラ ー は 無 視 さ れ ま す 。 そ の 場 合 に は 、 診 断 エ ラ ー は 出 力 さ れ ず 、 終 了 コ ー ド を ゼ ロ 以 外 に は 変 え ず に -delete ア ク シ ョ ン か ら の 返 り 値 も true に な り ま す 。
-exec command ;
command を 実 行 し ま す 。 command の 返 り 値 が 0 な ら 、 true を 返 し ま す 。 find の コ マ ン ド ラ イ ン で 、 こ れ 以 降 に 指 定 さ れ て い る 引 数 は 、 ‘;’ と い う 引 数 が 現 れ る ま で 、 す べ て そ の コ マ ン ド に 対 す る 引 数 と み な さ れ ま す 。 文 字 列 ‘{}’ は 、 コ マ ン ド 引 数 内 に 現 れ る す べ て の 箇 所 で 、 対 象 フ ァ イ ル 名 に 置 き 換 え ら れ ま す 。 find の 他 の 実 装 に お い て は 、 引 数 の 中 で ‘{}’ が 単 独 で 用 い ら れ て い な い と 、 対 象 フ ァ イ ル 名 に 置 き 換 え ら れ な い も の が あ り ま す 。 文 字 列 ‘{}’ は 、 シ ェ ル に よ っ て 展 開 さ れ な い よ う に 、 ど ち ら も ‘\’ で エ ス ケ ー プ す る か 、 ク ォ ー ト で 囲 む 必 要 が あ り ま す 。 ア ク シ ョ ン -exec の 具 体 例 に つ い て は 、 「 例 」 セ ク シ ョ ン を 参 照 し て く だ さ い 。 指 定 さ れ た コ マ ン ド は 、 一 致 し た フ ァ イ ル ご と に 一 回 ず つ 実 行 さ れ ま す 。 そ の コ マ ン ド は 、 find を 実 行 し た デ ィ レ ク ト リ に お い て 実 行 さ れ ま す 。 そ こ で 、 -exec ア ク シ ョ ン の 実 行 に あ た っ て は 、 セ キ ュ リ テ ィ の 問 題 が 避 け ら れ ま せ ん 。 し た が っ て 、 -exec の 代 わ り に 、 -execdir ア ク シ ョ ン を 使 用 し て く だ さ い 。
-exec command {} +
こ の 形 式 の -exec ア ク シ ョ ン は 、 対 象 フ ァ イ ル に 対 し て 、 指 定 さ れ た コ マ ン ド ( command ) を 実 行 し ま す 。 各 対 象 フ ァ イ ル は 、 コ マ ン ド ラ イ ン の 末 尾 に 追 加 さ れ な が ら 、 コ マ ン ド ラ イ ン が 構 成 さ れ る の で 、 指 定 コ マ ン ド の 呼 び 出 し 回 数 は 、 対 象 フ ァ イ ル 数 よ り も 大 幅 に 少 な く て 済 み ま す 。 コ マ ン ド ラ イ ン が 構 成 さ れ る 処 理 方 法 は 、 xargs の 場 合 と ほ ぼ 同 じ で す 。 ‘{}’ の 記 述 は 、 コ マ ン ド ラ イ ン 中 に 1 度 し か 用 い る こ と は で き ず 、 し か も 最 後 に ‘+’ を 伴 っ て 、 コ マ ン ド ラ イ ン の 最 終 記 述 と し な け れ ば な り ま せ ん 。 ま た 、 シ ェ ル に よ っ て 誤 っ た 解 釈 が 行 わ れ な い よ う に 、 (‘\’ を 使 っ て ) エ ス ケ ー プ す る か 、 全 体 を ク ォ ー ト で 囲 む こ と が 必 要 で す 。 そ の コ マ ン ド は 、 find を 実 行 し た デ ィ レ ク ト リ に お い て 実 行 さ れ ま す 。 ’+’ 形 式 を 使 っ た 呼 び 出 し に お い て 、 終 了 ス テ ー タ ス に ゼ ロ で な い 値 が 返 っ て き た ら 、 find も 、 終 了 ス テ ー タ ス に ゼ ロ 以 外 を 返 し ま す 。 find に お い て エ ラ ー が 発 生 す る と 、 そ の 場 で す ぐ に 終 了 す る 場 合 が あ り ま す 。 そ の 際 に は 、 残 り の コ マ ン ド が ま っ た く 実 行 さ れ な い こ と も あ り ま す 。 こ の た め 、 -exec my-command ... {} + -quit で は 、 my-command が 実 際 に は 実 行 さ れ な い 場 合 が あ り ま す 。 な お こ の -exec の 形 式 は 、 必 ず true を 返 し ま す 。
-execdir
command
;
-execdir
command
{} +
-exec と 同 様 で す が 、 指 定 し た コ マ ン ド は 、 一 致 し た フ ァ イ ル が 存 在 す る サ ブ デ ィ レ ク ト リ 内 で 実 行 さ れ ま す 。 こ の サ ブ デ ィ レ ク ト リ は 、 普 通 は find を 実 行 し た デ ィ レ ク ト リ と は 異 な る は ず で す 。 -exec と 同 じ よ う に 、 find を シ ェ ル か ら 呼 び 出 す 場 合 に は {} を ク ォ ー ト で く く る 必 要 が あ り ま す 。 こ の 形 式 は 、 コ マ ン ド を 呼 び 出 す 方 法 と し て 、 非 常 に 安 全 な も の で す 。 一 致 し た フ ァ イ ル の パ ス を 確 定 さ せ る 際 に 、 競 合 状 態 を 避 け る こ と が で き る た め で す 。 -exec ア ク シ ョ ン の 場 合 と 同 様 、 -execdir の ‘+’ 形 式 の 実 行 に お い て も 、 一 致 し た 複 数 フ ァ イ ル を 処 理 す る よ う な コ マ ン ド ラ イ ン が 構 成 さ れ ま す 。 た だ し 、 指 定 さ れ た command の 呼 び 出 し は 、 ど の 場 合 で あ っ て も 、 必 ず 同 一 サ ブ デ ィ レ ク ト リ 内 に あ る フ ァ イ ル だ け を 対 象 に し て 実 行 さ れ ま す 。 こ の オ プ シ ョ ン の 利 用 に あ た っ て は 、 環 境 変 数 PATH が 、 ‘.’ を 参 照 し て い な い よ う に す る 必 要 が あ り ま す 。 そ う し て い な い と 、 攻 撃 者 が 、 -execdir を 実 行 す る デ ィ レ ク ト リ 内 に 、 い か に も 正 し い フ ァ イ ル を 置 く だ け で 、 任 意 の コ マ ン ド 実 行 を 許 し て し ま う こ と に な り ま す 。 PATH 内 の エ ン ト リ に 、 空 の も の や 、 相 対 パ ス の デ ィ レ ク ト リ 名 を 含 ん で い る 場 合 に も 、 同 じ こ と が 言 え ま す 。 ’+’ 形 式 を 使 っ た 呼 び 出 し に お い て 、 終 了 ス テ ー タ ス に ゼ ロ で な い 値 が 返 っ て き た ら 、 find も 、 終 了 ス テ ー タ ス に ゼ ロ 以 外 を 返 し ま す 。 find に お い て エ ラ ー が 発 生 す る と 、 そ の 場 で す ぐ に 終 了 す る 場 合 が あ り ま す 。 そ の 際 に は 、 残 り の コ マ ン ド が ま っ た く 実 行 さ れ な い こ と も あ り ま す 。 こ の ア ク シ ョ ン が 返 す 値 は 、 + と ; の ど ち ら の 形 式 を 使 う か に よ っ て 異 な り ま す 。 -execdir command {} + は 必 ず true を 返 し ま す が 、 -execdir command {} ; は 、 command が 0 を 返 し た と き だ け 、 true を 返 し ま す 。
-fls file
true を 返 し ま す 。 -ls と 同 様 で す が 、 -fprint の よ う に 、 file へ の 出 力 を 行 い ま す 。 出 力 フ ァ イ ル は 、 こ の 述 語 表 現 に 一 致 す る も の が な く て も 、 必 ず 生 成 さ れ ま す 。 フ ァ イ ル 名 に 、 普 通 は 使 わ な い 文 字 が 含 ま れ て い る 場 合 の 扱 い に つ い て は 、 「 普 通 で は な い フ ァ イ ル 名 」 の セ ク シ ョ ン を 参 照 し て く だ さ い 。
-fprint file
true を 返 し ま す 。 パ ス 付 き の フ ァ イ ル 名 を 、 フ ァ イ ル file に 出 力 し ま す 。 find の 実 行 時 に 、 file が 存 在 し な け れ ば 、 新 た に 生 成 さ れ ま す 。 す で に 存 在 し て い た ら 、 元 の 中 身 は 失 わ れ ま す 。 フ ァ イ ル 名 /dev/stdout と /dev/stderr は 特 別 に 扱 わ れ ま す 。 そ れ ぞ れ 、 標 準 出 力 、 標 準 エ ラ ー 出 力 を 意 味 し ま す 。 出 力 フ ァ イ ル は 、 こ の 述 語 表 現 に 一 致 す る も の が な く て も 、 必 ず 生 成 さ れ ま す 。 フ ァ イ ル 名 に 、 普 通 は 使 わ な い 文 字 が 含 ま れ て い る 場 合 の 扱 い に つ い て は 、 「 普 通 で は な い フ ァ イ ル 名 」 の セ ク シ ョ ン を 参 照 し て く だ さ い 。
-fprint0 file
true を 返 し ま す 。 -print0 と 同 様 で す が 、 -fprint の よ う に 、 file へ の 出 力 を 行 い ま す 。 出 力 フ ァ イ ル は 、 こ の 述 語 表 現 に 一 致 す る も の が な く て も 、 必 ず 生 成 さ れ ま す 。 フ ァ イ ル 名 に 、 普 通 は 使 わ な い 文 字 が 含 ま れ て い る 場 合 の 扱 い に つ い て は 、 「 普 通 で は な い フ ァ イ ル 名 」 の セ ク シ ョ ン を 参 照 し て く だ さ い 。
-fprintf file format
true を 返 し ま す 。 -printf と 同 様 で す が 、 -fprint の よ う に 、 file へ の 出 力 を 行 い ま す 。 出 力 フ ァ イ ル は 、 こ の 述 語 表 現 に 一 致 す る も の が な く て も 、 必 ず 生 成 さ れ ま す 。 フ ァ イ ル 名 に 、 普 通 は 使 わ な い 文 字 が 含 ま れ て い る 場 合 の 扱 い に つ い て は 、 「 普 通 で は な い フ ァ イ ル 名 」 の セ ク シ ョ ン を 参 照 し て く だ さ い 。
|
-ls |
true を 返 し ま す 。 対 象 フ ァ イ ル を 、 ls -dils の 書 式 で 標 準 出 力 に 出 力 し ま す 。 ブ ロ ッ ク 数 は 、 1 ブ ロ ッ ク に 1 KB バ イ ト で す 。 た だ し 、 環 境 変 数 POSIXLY_CORRECT が 設 定 さ れ て い る 場 合 は 、 1 ブ ロ ッ ク 512 バ イ ト が 使 用 さ れ ま す 。 フ ァ イ ル 名 に 、 普 通 は 使 わ な い 文 字 が 含 ま れ て い る 場 合 の 扱 い に つ い て は 、 「 普 通 で は な い フ ァ イ ル 名 」 の セ ク シ ョ ン を 参 照 し て く だ さ い 。 |
-ok command ;
-exec と 同 様 で す が 、 ユ ー ザ ー へ の 問 い 合 わ せ を 行 い ま す 。 ユ ー ザ ー が 同 意 す れ ば 、 コ マ ン ド を 実 行 し ま す 。 同 意 し な け れ ば 、 何 も せ ず に false を 返 し ま す 。 コ マ ン ド が 実 行 さ れ る 際 に 、 標 準 入 力 は リ ダ イ レ ク ト さ れ て 、 /dev/null に な り ま す 。 こ の オ プ シ ョ ン は -files0-from オ プ シ ョ ン と と も に 指 定 す る こ と は で き ま せ ん 。
プ ロ ン プ ト に 対 す る ユ ー ザ ー の 入 力 は 、 肯 定 、 否 定 を 表 す 一 組 の 正 規 表 現 と の 一 致 確 認 が 行 わ れ て 、 同 意 し た か ど う か が 決 定 し ま す 。 こ の 正 規 表 現 は 、 環 境 変 数 POSIXLY_CORRECT が 設 定 さ れ て い れ ば 、 シ ス テ ム か ら 取 得 さ れ ま す 。 環 境 変 数 が 設 定 さ れ て い な け れ ば 、 find が 持 つ メ ッ セ ー ジ 翻 訳 か ら 取 得 さ れ ま す 。 シ ス テ ム に 適 切 な 定 義 が 存 在 し な か っ た 場 合 は 、 find 自 体 が 持 つ 定 義 が 使 用 さ れ ま す 。 ど の 場 合 で も 、 正 規 表 現 そ の も の の 解 釈 は 、 環 境 変 数 LC_CTYPE (文 字 ク ラ ス ) や LC_COLLATE (文 字 の 範 囲 や 等 価 ク ラ ス ) の 影 響 を 受 け ま す 。
-okdir command ;
-execdir と 同 様 で す が 、 -ok と 同 じ よ う に 、 ユ ー ザ ー へ の 問 い 合 わ せ を 行 な い ま す 。 ユ ー ザ ー が 同 意 し な け れ ば 、 何 も せ ず に false を 返 し ま す 。 コ マ ン ド が 実 行 さ れ る 際 に 、 標 準 入 力 は リ ダ イ レ ク ト さ れ て 、 /dev/null に な り ま す 。 こ の オ プ シ ョ ン は -files0-from オ プ シ ョ ン と と も に 指 定 す る こ と は で き ま せ ん 。
|
|
true を 返 し ま す 。 パ ス 付 き の フ ァ イ ル 名 と 、 最 後 に 改 行 文 字 を つ け て 、 標 準 出 力 に 出 力 し ま す 。 find の 出 力 を 、 パ イ プ を 使 っ て 他 の プ ロ グ ラ ム に 受 け 渡 し て い る 場 合 、 対 象 フ ァ イ ル 名 に 改 行 文 字 が 含 ま れ て い る 可 能 性 が 、 少 し で も あ る な ら 、 -print で は な く 、 -print0 ア ク シ ョ ン の 使 用 を 是 非 考 え て く だ さ い 。 フ ァ イ ル 名 に 、 普 通 は 使 わ な い 文 字 が 含 ま れ て い る 場 合 の 扱 い に つ い て は 、 「 普 通 で は な い フ ァ イ ル 名 」 の セ ク シ ョ ン を 参 照 し て く だ さ い 。 |
-print0
true を 返 し ま す 。 パ ス 付 き の フ ァ イ ル 名 と 、 最 後 に ヌ ル 文 字 を つ け て 、 標 準 出 力 に 出 力 し ま す ( -print が 改 行 文 字 を つ け る の と は 異 な り ま す )。 こ の ア ク シ ョ ン を 使 え ば 、 find の 出 力 を 処 理 す る プ ロ グ ラ ム が 、 改 行 文 字 や ホ ワ イ ト ス ペ ー ス を 含 む フ ァ イ ル 名 を 、 正 し く 解 釈 で き る よ う に な り ま す 。 こ の ア ク シ ョ ン は 、 xargs の -0 オ プ シ ョ ン に 対 応 し ま す 。
-printf format
true を 返 し ま す 。 こ れ は 標 準 出 力 に format を 出 力 し ま す 。 format 内 の ‘\’ に よ る エ ス ケ ー プ や 、 ‘%’ に 始 ま る デ ィ レ ク テ ィ ブ を 解 釈 し ま す 。 フ ィ ー ル ド の 幅 や 精 度 は 、 C 言 語 の printf (3) 関 数 と 同 じ 方 法 で 指 定 す る こ と が で き ま す 。 多 く の フ ィ ー ル ド は 、 %d と し て で は な く 、 %s と し て 出 力 さ れ ま す 。 こ の た め 、 フ ラ グ が 期 待 通 り に 動 作 し な い こ と も 発 生 し ま す 。 一 方 で 、 ‘-’ フ ラ グ (フ ィ ー ル ド を 必 ず 左 揃 え に す る 指 定 ) を 使 え ば 、 必 ず 動 作 し ま す 。 -print と は 違 っ て 、 -printf は 、 文 字 列 の 末 尾 に 改 行 文 字 を 追 加 し ま せ ん 。 エ ス ケ ー プ と デ ィ レ ク テ ィ ブ に は 、 以 下 の も の が あ り ま す 。
|
\a |
警 告 ベ ル 。 |
|||
|
\b |
バ ッ ク ス ペ ー ス 。 |
|||
|
\c |
こ の フ ォ ー マ ッ ト に よ る 出 力 を す ぐ に 停 止 し て 、 出 力 を フ ラ ッ シ ュ し ま す 。 |
|||
|
\f |
フ ォ ー ム フ ィ ー ド 。 |
|||
|
\n |
改 行 文 字 。 |
|||
|
\r |
復 帰 文 字 。 |
|||
|
\t |
水 平 タ ブ 。 |
|||
|
\v |
垂 直 タ ブ 。 |
|||
|
\0 |
ASCII NUL 文 字 。 |
|||
|
\\ |
バ ッ ク ス ラ ッ シ ュ 文 字 そ の も の (‘\’)。 |
|||
|
\NNN |
ASCII コ ー ド が NNN (8 進 数 ) の 文 字 。 |
バ ッ ク ス ラ ッ シ ュ 文 字 ‘\’ に 、 上 記 以 外 の 文 字 が 続 い た 場 合 は 、 ‘\’ が 普 通 の 文 字 と し て 扱 わ れ ま す 。 つ ま り 、 2 文 字 と も 表 示 さ れ る こ と に な り ま す 。
|
%% |
パ ー セ ン ト 文 字 そ の も の 。 |
||
|
%a |
フ ァ イ ル の 最 終 ア ク セ ス 時 間 を 、 C 言 語 の ctime (3) 関 数 が 返 す 形 式 で 表 し た も の で す 。 |
||
|
%A k |
k で 指 定 さ れ た 書 式 に 基 づ い て 、 フ ァ イ ル の 最 終 ア ク セ ス 時 間 を 表 し た も の で す 。 k に 指 定 す る の は 、 ‘@’ か 、 あ る い は C 言 語 の strftime 関 数 で 用 い る デ ィ レ ク テ ィ ブ で す 。 以 下 に 、 k に 指 定 可 能 な 値 を 示 し ま す 。 た だ し 、 す べ て を 示 す も の で は あ り ま せ ん 。 完 全 な 一 覧 に つ い て は 、 strftime (3) の ド キ ュ メ ン ト を 参 照 し て く だ さ い 。 指 定 文 字 に 応 じ た 文 字 列 変 換 は 、 シ ス テ ム に よ っ て は 利 用 で き な い 場 合 が あ り ま す 。 そ れ は 、 ラ イ ブ ラ リ 関 数 strftime (3) の 実 装 が 、 シ ス テ ム よ っ て 異 な る か ら で す 。 |
@
|
Jan. 1, 1970, 00:00 GMT か ら の 経 過 秒 数 。 小 数 点 以 下 も 表 示 し ま す 。 |
時 刻 フ ィ ー ル ド :
|
H |
時 (00..23) |
||
|
I |
時 (01..12) |
||
|
k |
時 ( 0..23) |
||
|
l |
時 ( 1..12) |
||
|
M |
分 (00..59) |
||
|
p |
現 在 の ロ ケ ー ル に お い て AM/PM に 相 当 す る 文 字 列 。 |
||
|
r |
12 時 間 制 の 時 刻 (hh:mm:ss [AP]M) |
||
|
S |
秒 (00.00 .. 61.00)。 小 数 点 以 下 も 表 示 し ま す 。 |
||
|
T |
24 時 間 制 の 時 刻 (hh:mm:ss.xxxxxxxxxx) |
||
|
+ |
日 付 と 時 刻 。 両 者 の 間 は ‘2004-04-28+22:22:05.0’ と い っ た よ う に ’+’ で 区 切 ら れ ま す 。 こ れ は GNU 拡 張 で す 。 時 間 は 、 現 在 の タ イ ム ゾ ー ン に よ る も の が 用 い ら れ ま す (し た が っ て 、 環 境 変 数 TZ の 設 定 に 影 響 を 受 け る 場 合 が あ り ま す )。 秒 は 、 小 数 点 以 下 が 含 ま れ ま す 。 |
||
|
X |
現 在 の ロ ケ ー ル に よ る 時 刻 表 示 (H:M:S)。 秒 は 小 数 点 以 下 を 含 み ま す 。 |
||
|
Z |
タ イ ム ゾ ー ン (JST な ど )。 タ イ ム ゾ ー ン が 決 定 で き な か っ た 場 合 は 、 何 も 表 示 さ れ ま せ ん 。 |
日 付 フ ィ ー ル ド :
|
a |
現 在 の ロ ケ ー ル に よ る 曜 日 の 短 縮 形 (Sun..Sat)。 |
||
|
A |
現 在 の ロ ケ ー ル に よ る 、 曜 日 の 省 略 し な い 表 示 。 長 さ は 可 変 (Sunday..Saturday)。 |
||
|
b |
現 在 の ロ ケ ー ル に よ る 月 名 の 短 縮 形 (Jan..Dec)。 |
||
|
B |
現 在 の ロ ケ ー ル に よ る 月 名 の 省 略 し な い 表 示 。 長 さ は 可 変 (January..December)。 |
||
|
c |
現 在 の ロ ケ ー ル に よ る 日 付 と 時 刻 の 表 示 (Sat Nov 04 12:02:33 EST 1989)。 こ の 表 示 形 式 は 、 ctime (3) の も の と 同 じ で あ り 、 ctime (3) の 形 式 と の 互 換 性 を 維 持 す る た め の も の で す 。 秒 は 小 数 点 表 記 さ れ ま せ ん 。 |
||
|
d |
そ の 月 の 何 日 目 か の 表 示 (01..31)。 |
||
|
D |
日 付 (mm/dd/yy)。 |
||
|
F |
日 付 (yyyy-mm-dd)。 |
||
|
h |
b と 同 じ 。 |
||
|
j |
そ の 年 の 何 日 目 か の 表 示 (001..366)。 |
||
|
m |
月 (01..12)。 |
||
|
U |
そ の 年 の 何 週 目 か (日 曜 日 を 週 の 始 ま り と す る ) (00..53)。 |
||
|
w |
曜 日 (0..6)。 |
||
|
W |
そ の 年 の 何 週 目 か (月 曜 日 を 週 の 始 ま り と す る ) (00..53)。 |
||
|
x |
現 在 の ロ ケ ー ル に よ る 日 付 表 示 (mm/dd/yy)。 |
||
|
y |
年 の 下 二 桁 (00..99)。 |
||
|
Y |
年 (1970...)。 |
||
|
%b |
フ ァ イ ル が 使 用 す る デ ィ ス ク 容 量 を 、 1 ブ ロ ッ ク 512 バ イ ト の ブ ロ ッ ク 数 で 表 示 し ま す 。 デ ィ ス ク 領 域 は 、 フ ァ イ ル シ ス テ ム ブ ロ ッ ク サ イ ズ の 倍 数 に よ っ て 割 り 当 て ら れ る の で 、 た い て い は %s/512 よ り 大 き く な り ま す 。 た だ し ス パ ー ス フ ァ イ ル の 場 合 は 、 %s/512 よ り 小 さ く な る こ と が あ り ま す 。
|
%B k |
フ ァ イ ル の 生 成 時 間 。 フ ォ ー マ ッ ト は k に よ っ て 指 定 し ま す 。 こ れ は %A に 対 す る も の と 同 じ で す 。 処 理 を 行 っ て い る オ ペ レ ー テ ィ ン グ シ ス テ ム や フ ァ イ ル シ ス テ ム が 、 生 成 時 間 を サ ポ ー ト し て い な い 場 合 、 こ の デ ィ レ ク テ ィ ブ は 空 文 字 を 返 し ま す 。 |
||
|
%c |
フ ァ イ ル の 最 終 ス テ ー タ ス 変 更 時 間 を 、 C 言 語 の ctime (3) 関 数 が 返 す 形 式 で 表 し た も の で す 。 |
||
|
%C k |
フ ァ イ ル の 最 終 ス テ ー タ ス 変 更 時 間 を 、 k で 指 定 し た 書 式 で 表 し た も の で す 。 k は %A の 場 合 と 同 様 で す 。 |
||
|
%d |
デ ィ レ ク ト リ ツ リ ー 内 で 、 対 象 フ ァ イ ル が ど れ だ け 深 い 階 層 数 に あ る か を 示 し ま す 。 0 は 、 対 象 フ ァ イ ル が 検 索 開 始 ポ イ ン ト に あ る こ と を 意 味 し ま す 。 |
||
|
%D |
フ ァ イ ル が ど の デ バ イ ス 上 に あ る か を 、 10 進 数 の デ バ イ ス 番 号 (stat 構 造 体 の st_dev フ ィ ー ル ド ) で 示 し ま す 。 |
||
|
%f |
ベ ー ス 名 を 表 し ま す 。 フ ァ イ ル 名 か ら 、 先 頭 に あ る デ ィ レ ク ト リ 名 を 取 り 除 き ま す (最 後 の 要 素 の み を 残 し ま す )。 / に 対 す る 結 果 は ‘/’ で す 。 処 理 例 に つ い て は 「 例 」 セ ク シ ョ ン を 参 照 し て く だ さ い 。 |
||
|
%F |
フ ァ イ ル が あ る フ ァ イ ル シ ス テ ム の タ イ プ を 表 し ま す 。 こ こ で 表 示 さ れ る 値 は -fstype の 引 数 に 指 定 す る こ と が で き ま す 。 |
||
|
%g |
フ ァ イ ル の グ ル ー プ 名 を 表 し ま す 。 グ ル ー プ 名 が 存 在 し な い 場 合 は 、 グ ル ー プ ID 番 号 を 表 し ま す 。 |
||
|
%G |
フ ァ イ ル の グ ル ー プ ID 番 号 。 |
||
|
%h |
デ ィ レ ク ト リ 名 を 表 し ま す 。 つ ま り 、 フ ァ イ ル 名 の 先 頭 に あ る デ ィ レ ク ト リ 部 分 (最 後 の 要 素 以 外 の す べ て ) を 表 し ま す 。 フ ァ イ ル 名 に ス ラ ッ シ ュ が 一 つ も 含 ま れ な い 場 合 (カ レ ン ト デ ィ レ ク ト リ 内 に あ る こ と に な る の で )、 書 式 指 定 子 %h は ‘.’ に 展 開 さ れ ま す 。 対 象 フ ァ イ ル が デ ィ レ ク ト リ そ の も の で あ っ て 、 ス ラ ッ シ ュ / を 含 む 場 合 、 %h は 空 文 字 に 展 開 さ れ ま す 。 具 体 例 は 「 例 」 セ ク シ ョ ン を 参 照 し て く だ さ い 。 |
||
|
%H |
検 索 開 始 ポ イ ン ト の う ち 、 対 象 フ ァ イ ル が 見 つ か っ た も の を 表 し ま す 。 |
||
|
%i |
フ ァ イ ル の i ノ ー ド 番 号 (10 進 数 表 示 )。 |
||
|
%k |
フ ァ イ ル が 利 用 す る デ ィ ス ク 容 量 を 、 1 ブ ロ ッ ク 1 KB の ブ ロ ッ ク 数 で 表 示 し ま す 。 デ ィ ス ク 領 域 は 、 フ ァ イ ル シ ス テ ム の ブ ロ ッ ク サ イ ズ の 倍 数 に よ っ て 割 り 当 て ら れ る の で 、 た い て い は %s/1024 よ り 大 き く な り ま す 。 ス パ ー ス フ ァ イ ル の 場 合 は 、 %s/1024 よ り 小 さ く な る こ と が あ り ま す 。 |
||
|
%l |
シ ン ボ リ ッ ク リ ン ク 先 (シ ン ボ リ ッ ク リ ン ク で な い 場 合 は 、 空 文 字 列 ) を 表 し ま す 。 |
||
|
%m |
フ ァ イ ル の 許 可 属 性 ビ ッ ト (8 進 数 表 示 ) を 表 し ま す 。 こ の オ プ シ ョ ン が 使 用 し て い る 数 値 は 、 た い て い の Unix 実 装 に お い て 用 い ら れ る 「 従 来 の 」 数 値 で す 。 し か し 利 用 中 の シ ス テ ム 実 装 に お い て は 、 8 進 数 で 表 示 す る 許 可 属 性 ビ ッ ト の 並 び 方 が 、 普 通 と は 異 な る か も し れ ま せ ん 。 そ の 場 合 は 、 フ ァ イ ル の 許 可 属 性 の 実 際 の 値 と 、 %m の 出 力 と が 異 な る こ と に な り ま す 。 数 値 の 先 頭 に 0 を つ け て 表 示 し た い 場 合 が あ り ま す 。 そ の と き は 、 # フ ラ グ を 使 っ て 、 た と え ば ‘%#m’ の よ う に し ま す 。 |
||
|
%M |
フ ァ イ ル の 許 可 属 性 を 表 し ま す ( ls と 同 様 の シ ン ボ ル に よ る 表 現 )。 こ の デ ィ レ ク テ ィ ブ は 、 findutils 4.2.5 以 降 に サ ポ ー ト さ れ る よ う に な り ま し た 。 |
||
|
%n |
フ ァ イ ル の ハ ー ド リ ン ク 数 。 |
||
|
%p |
フ ァ イ ル 名 。 |
||
|
%P |
検 索 開 始 ポ イ ン ト 名 を 使 っ て 表 現 し た 、 対 象 フ ァ イ ル 名 で あ っ て 、 現 在 削 除 さ れ た も の を 表 し ま す 。 |
||
|
%s |
バ イ ト 単 位 に よ る フ ァ イ ル サ イ ズ 。 |
||
|
%S |
フ ァ イ ル が 「 ま ば ら 」 で あ る 度 合 い (sparseness) を 表 し ま す 。 こ の 値 は (BLOCKSIZE*st_blocks / st_size) と し て 計 算 さ れ ま す 。 あ る 程 度 の 大 き さ を 持 つ 普 通 の フ ァ イ ル の 場 合 、 そ の 正 確 な 値 は 、 シ ス テ ム に よ っ て さ ま ざ ま で す 。 ス パ ー ス フ ァ イ ル で あ れ ば 、 「 ま ば ら 」 な 度 合 い は 、 普 通 は 1.0 未 満 で す 。 一 方 で 、 間 接 ブ ロ ッ ク を 使 用 し て い る フ ァ イ ル の 場 合 は 、 1.0 以 上 に な る こ と が あ り ま す 。 BLOCKSIZE に 設 定 さ れ る 値 は 、 シ ス テ ム に 依 存 し ま す が 、 通 常 は 512 バ イ ト で す 。 フ ァ イ ル サ イ ズ が 0 の 場 合 、 こ の 値 は 未 定 義 と し て 出 力 さ れ ま す 。 st_blocks を サ ポ ー ト し て い な い シ ス テ ム で は 、 フ ァ イ ル の 「 ま ば ら 」 な 度 合 い は 、 1.0 と み な さ れ ま す 。 |
||
|
%t |
フ ァ イ ル の 最 終 更 新 時 間 を 、 C 言 語 の ctime (3) 関 数 が 返 す 形 式 で 表 し た も の で す 。 |
||
|
%T k |
k で 指 定 さ れ た 書 式 に 基 づ い て 、 フ ァ イ ル の 最 終 更 新 時 間 を 表 し た も の で す 。 k は %A の 場 合 と 同 様 で す 。 |
||
|
%u |
フ ァ イ ル を 所 有 す る ユ ー ザ ー 名 。 ユ ー ザ ー に 名 前 が な い 場 合 は 、 ユ ー ザ ー ID 番 号 が 用 い ら れ ま す 。 |
||
|
%U |
フ ァ イ ル を 所 有 す る ユ ー ザ ー の ID 番 号 。 |
||
|
%y |
フ ァ イ ル タ イ プ ( ls -l の 表 現 と 同 様 で す )。 U は タ イ プ 不 明 (unknown type) を 表 し ま す (発 生 す る こ と は あ り ま せ ん )。 |
||
|
%Y |
フ ァ イ ル タ イ プ (%y と 同 様 )。 さ ら に 、 シ ン ボ リ ッ ク リ ン ク を た ど り ま す 。 ‘L’ は ル ー プ 、 ‘N’ は 非 存 在 、 ‘?’ は そ の 他 の エ ラ ー で あ り 、 シ ン ボ リ ッ ク リ ン ク 先 の タ イ プ が 決 定 で き な か っ た 場 合 で す 。 |
||
|
%Z |
(SELinux 有 効 時 の み ) フ ァ イ ル の セ キ ュ リ テ ィ コ ン テ キ ス ト 。 |
%{ %[ %(
将 来 の 利 用 の た め に 予 約 さ れ て い ま す 。
1 つ の ‘%’ に 対 し て 、 上 記 以 外 の 文 字 が 続 く 場 合 、 ‘%’ 文 字 は 無 視 さ れ て 、 そ れ に 続 い た 文 字 が 表 示 さ れ ま す (新 た に 指 定 文 字 が 定 義 さ れ る か も し れ な い た め 、 こ の 動 作 に 期 待 す る の は 避 け て く だ さ い )。 書 式 指 定 の 文 字 列 の 最 後 に ‘%’ だ け が 1 つ あ る と 、 次 に 文 字 が な い た め 、 そ の 動 作 は 不 定 と な り ま す 。 何 が 起 き る か 分 か り ま せ ん か ら 、 ロ ケ ー ル に よ っ て は 、 ド ア の 鍵 を 紛 失 す る か も し れ ま せ ん し 、 せ っ か く 読 ん で い る 小 説 の 最 後 の ペ ー ジ が 、 な く な っ て し ま う か も し れ ま せ ん 。
デ ィ レ ク テ ィ ブ %m と %d は 、 書 式 フ ラ グ # , 0 , + を サ ポ ー ト し ま す 。 こ れ 以 外 の デ ィ レ ク テ ィ ブ は 、 数 値 を 表 す 場 合 で あ っ て も 、 こ の フ ラ グ を サ ポ ー ト し ま せ ん 。 こ の フ ラ グ を サ ポ ー ト し な い 数 値 関 連 の デ ィ レ ク テ ィ ブ に は 、 G , U , b , D , k , n が あ り ま す 。 書 式 フ ラ グ と し て ‘-’ も サ ポ ー ト さ れ て い ま す 。 こ れ を 使 え ば 、 欄 出 力 の 右 揃 え (デ フ ォ ル ト ) を 左 揃 え に 変 更 す る こ と が で き ま す 。
フ ァ イ ル 名 に 、 普 通 は 使 わ な い 文 字 が 含 ま れ て い る 場 合 の 扱 い に つ い て は 、 「 普 通 で は な い フ ァ イ ル 名 」 の セ ク シ ョ ン を 参 照 し て く だ さ い 。
|
-prune |
true を 返 し ま す 。 処 理 対 象 が デ ィ レ ク ト リ で あ る 場 合 、 デ ィ レ ク ト リ 内 に 入 っ て い き ま せ ん 。 -depth が 指 定 し て あ る と 、 -prune は 何 も し ま せ ん 。 -delete の 指 定 に は 、 暗 に -depth の 指 定 が 含 ま れ て い る の で 、 -prune と -delete を 同 時 に 使 う こ と は で き ま せ ん 。 た と え ば 、 src/emacs と い う デ ィ レ ク ト リ と そ の 下 に あ る フ ァ イ ル や デ ィ レ ク ト リ は ス キ ッ プ す る と し ま す 。 そ し て そ れ 以 外 の フ ァ イ ル を 表 示 し よ う と す る 場 合 に は 、 以 下 の よ う に 実 行 し ま す 。 |
find . -path ./src/emacs -prune -o -print
|
-quit |
す ぐ に 終 了 し ま す (エ ラ ー が 発 生 し て い な け れ ば 0 を 返 し ま す )。 こ れ は -prune と は 異 な り ま す 。 -prune は 、 適 用 さ れ た デ ィ レ ク ト リ の 内 容 を 、 対 象 外 と す る も の で す が 、 -quit は 単 純 に find を そ の 場 で 止 め ま す 。 子 プ ロ セ ス が 残 る こ と は あ り ま せ ん 。 コ マ ン ド ラ イ ン が 、 -exec ... + や -execdir ... + の 形 式 で 構 成 さ れ て い た 場 合 、 そ の コ マ ン ド は す べ て 呼 び 出 さ れ て か ら 、 プ ロ グ ラ ム が 終 了 し ま す 。 -quit が 実 行 さ れ る と 、 コ マ ン ド ラ イ ン 上 に 指 定 さ れ て い た 残 り の フ ァ イ ル は 、 処 理 さ れ ま せ ん 。 た と え ば ‘ find /tmp/foo /tmp/bar -print -quit ‘ で は 、 ‘/tmp/foo‘ だ け が 表 示 さ れ ま す 。 |
-quit を 利 用 す る ご く 普 通 の ケ ー ス と し て 、 フ ァ イ ル シ ス テ ム 内 か ら 検 索 し た い も の が 見 つ か っ た ら 、 検 索 を や め る と い う 使 い 方 が あ り ま す 。 た と え ば 、 1 つ の フ ァ イ ル だ け を 見 つ け た い 場 合 に は 、 以 下 の よ う に す る こ と が で き ま す 。
find / -name needle -print -quit
オ ペ レ ー タ ー
以
下 で は オ ペ レ
ー タ ー を 、 優
先 順 位 の 高 い
も の か ら 順 に
示 し ま す 。
(
expr
)
カ ッ コ 内 を 優 先 的 に 処 理 し ま す 。 シ ェ ル に と っ て 、 カ ッ コ に は 特 別 な 意 味 が あ る た め 、 普 通 は ク ォ ー ト で く く る 必 要 が あ り ま す 。 こ の マ ニ ュ ア ル ペ ー ジ で あ げ て い る 例 で は 、 こ の 目 的 で バ ッ ク ス ラ ッ シ ュ を 多 用 し て い ま す 。 つ ま り ‘(...)’ は 、 ‘\(...\)’ の よ う に 記 述 し て い ま す 。
|
! expr |
expr が false の 場 合 に true と な り ま す 。 通 常 こ の 記 号 も 、 シ ェ ル に よ っ て 解 釈 さ れ な い よ う に す る 必 要 が あ り ま す 。 |
-not expr
! expr と 同 様 で す が 、 POSIX に は 準 拠 し て い ま せ ん 。
expr1 expr2
2 つ 並 ん だ 式 は 、 暗 に -a に よ っ て 結 合 さ れ た も の と し て 扱 わ れ ま す 。 そ し て expr1 が false の 場 合 、 expr2 は 評 価 さ れ ま せ ん 。
expr1 -a expr2
expr1 expr2 と 同 じ で す 。
expr1 -and expr2
expr1 expr2 と 同 様 で す が 、 POSIX に は 準 拠 し て い ま せ ん 。
expr1 -o expr2
OR 結 合 で す 。 expr1 が true の と き 、 expr2 は 評 価 さ れ ま せ ん 。
expr1 -or expr2
expr1 -o expr2 と 同 様 で す が 、 POSIX に は 準 拠 し て い ま せ ん 。
expr1 , expr2
リ ス ト を 表 し ま す 。 必 ず expr1 と expr2 の 両 方 が 評 価 さ れ ま す 。 expr1 の 値 は 無 視 さ れ て 、 expr2 の 値 が 、 リ ス ト と し て の 値 に な り ま す 。 こ の カ ン マ オ ペ レ ー タ ー は 、 さ ま ざ ま な 種 類 の も の を 探 す と き に 便 利 で す 。 た だ し フ ァ イ ル シ ス テ ム 内 の 検 索 は 、 一 度 し か 行 わ れ ま せ ん 。 さ ま ざ ま な も の に 一 致 し た 結 果 を 、 複 数 フ ァ イ ル に 出 力 す る に は 、 -fprintf ア ク シ ョ ン を 利 用 し ま す 。
暗 に -a の 指 定 を 意 図 し た 場 合 (た と え ば テ ス ト と テ ス ト の 間 に 、 こ の オ ペ レ ー タ ー を 記 述 し な か っ た 場 合 )、 あ る い は 明 示 的 に 指 定 し た 場 合 は 、 -o よ り も 優 先 順 位 が 高 い こ と を 覚 え て お い て く だ さ い 。 た と え ば 、 find . -name afile -o -name bfile -print と し た 場 合 、 afile が 出 力 さ れ る こ と は な い 、 と い う こ と で す 。
普 通 で は な い フ ァ イ ル 名
find
の ア ク シ ョ ン
の 多 く で は 、
他 ユ ー ザ ー が
、 出 力 さ れ る
デ ー タ を 自 由
に 制 御 で き ま
す 。 デ ー タ に
は 、 フ ァ イ ル
名 、 サ イ ズ 、
更 新 時 間 な ど
、 さ ま ざ ま な
も の が あ り ま
す 。 フ ァ イ ル
名 は 、 ‘\0’ と
‘/’ 以 外 の 文 字
で あ れ ば 、 何
で も 含 め る こ
と が で き る た
め 、 潜 在 的 な
問 題 を 抱 え て
い ま す 。 フ ァ
イ ル 名 の 中 に
、 普 段 用 い な
い 文 字 が 含 ま
れ て い る と 、
端 末 に 対 し て
、 予 期 し な い
動 作 や 、 時 に
は 望 ま し く な
い 事 態 を 引 き
起 こ す こ と も
可 能 で す 。 (た
と え ば 端 末 次
第 で は 、 フ ァ
ン ク シ ョ ン キ
ー の 設 定 変 更
が 行 わ れ て し
ま う か も し れ
ま せ ん )。 普 段
使 わ な い 文 字
を 、 ど の よ う
に 処 理 す る か
に つ い て は 、
ア ク シ ョ ン ご
と に 動 作 が 異
な り ま す 。 以
下 に こ の こ と
を 示 し ま す 。
-print0, -fprint0
常 に フ ァ イ ル 名 を 修 正 せ ず に 、 そ の ま ま 出 力 し ま す 。 出 力 先 が 端 末 で あ っ て も 同 じ で す 。
-ls, -fls
普 段 使 わ な い 文 字 は 、 必 ず エ ス ケ ー プ さ れ ま す 。 ホ ワ イ ト ス ペ ー ス 、 バ ッ ク ス ラ ッ シ ュ 、 ダ ブ ル ク ォ ー ト は 、 C 言 語 の よ う な エ ス ケ ー プ 表 現 で 出 力 さ れ ま す (‘\f’, ‘\"’ な ど )。 そ の 他 の 文 字 で は 、 8 進 数 表 記 に よ っ て エ ス ケ ー プ し て 出 力 さ れ ま す 。 通 常 の 表 示 可 能 な 文 字 ( -ls や -fls に お い て は 、 8 進 数 の 041 か ら 0176 に 相 当 す る 文 字 ) は 、 そ の ま ま 出 力 さ れ ま す 。
-printf, -fprintf
出 力 先 が 端 末 で な い 場 合 は 、 そ の ま ま 出 力 さ れ ま す 。 出 力 先 が 端 末 の 場 合 は 、 利 用 す る デ ィ レ ク テ ィ ブ に よ っ て 、 出 力 は 変 わ り ま す 。 デ ィ レ ク テ ィ ブ %D, %F, %g, %G, %H, %Y, %y が 展 開 さ れ る 値 は 、 フ ァ イ ル 所 有 者 が 制 御 す る も の で は な い た め 、 そ の ま ま 出 力 さ れ ま す 。 デ ィ レ ク テ ィ ブ %a, %b, %c, %d, %i, %k, %m, %M, %n, %s, %t, %u, %U の 値 は 、 フ ァ イ ル 所 有 者 が 制 御 可 能 な も の で す が 、 だ か ら と 言 っ て 、 端 末 に 任 意 に デ ー タ 送 信 し て よ い も の で は あ り ま せ ん 。 し た が っ て こ の と き の デ ー タ も 、 そ の ま ま 出 力 さ れ ま す 。 デ ィ レ ク テ ィ ブ %f, %h, %l, %p, %P の 出 力 値 は 、 ク ォ ー ト で く く ら れ ま す 。 ク ォ ー ト で く く る こ の 方 法 は 、 GNU ls の 場 合 と 同 じ で す 。 逆 に -ls や -fls に お け る 方 法 と は 異 な り ま す 。 find の 出 力 書 式 を 自 由 に 定 め て よ い 、 と い う こ と に な れ ば 、 普 通 は 、 終 端 文 字 と し て 改 行 で は な く 、 ‘\0’ を 用 い る よ う に 変 更 す る の が 適 切 で す 。 こ れ を 行 う の は 、 フ ァ イ ル 名 に 、 空 白 や 改 行 が 含 ま れ る 場 合 が あ る た め で す 。 ど の 文 字 を ク ォ ー ト で く く る か は 、 環 境 変 数 LC_CTYPE の 設 定 を 用 い て 決 定 さ れ ま す 。
-print, -fprint
ク ォ ー ト で く く る 方 法 は 、 -printf や -fprintf と 同 じ で す 。 find を ス ク リ プ ト 内 で 利 用 す る 場 合 や 、 一 致 し た フ ァ イ ル に あ ら ゆ る 文 字 が 含 ま れ る 可 能 性 が あ る 場 合 に は 、 -print を 用 い る の で は な く 、 -print0 を 用 い る よ う に し て く だ さ い 。
ア ク シ ョ ン -ok と -okdir は 、 対 象 フ ァ イ ル 名 を そ の ま ま 出 力 し ま す 。 こ の 動 作 は 、 将 来 の リ リ ー ス で 変 わ る か も し れ ま せ ん 。
規 格 へ の 準 拠
POSIX 規 格 に で き る だ け 準 拠 し た 動 作 が 必 要 で あ れ ば 、 環 境 変 数 POSIXLY_CORRECT を 設 定 し て く だ さ い 。 以 下 の オ プ シ ョ ン は 、 POSIX 規 格 (IEEE Std 1003.1-2008, 2016 Edition) の 中 で 規 定 さ れ て い ま す 。
|
-H |
こ の オ プ シ ョ ン は サ ポ ー ト さ れ て い ま す 。 |
||
|
-L |
こ の オ プ シ ョ ン は サ ポ ー ト さ れ て い ま す 。 |
||
|
-name |
こ の オ プ シ ョ ン は サ ポ ー ト さ れ て い ま す が 、 POSIX へ の 適 応 は 、 シ ス テ ム の fnmatch (3) ラ イ ブ ラ リ 関 数 が 、 ど れ だ け POSIX に 準 拠 し て い る か に よ っ て 、 変 わ り ま す 。 findutils-4.2.2 以 降 、 シ ェ ル の メ タ 文 字 (た と え ば ‘*’, ‘?’, ‘[]’) は 、 フ ァ イ ル 名 先 頭 の ‘.’ 文 字 に 一 致 す る よ う に な り ま し た 。 こ れ は IEEE PASC interpretation 126 の 要 求 に 従 っ た も の で す 。 こ れ は 、 そ れ 以 前 の findutils の バ ー ジ ョ ン か ら 、 変 更 さ れ て い る 点 で す 。 |
||
|
-type |
サ ポ ー ト さ れ て い ま す 。 POSIX で は ‘b’, ‘c’, ‘d’, ‘l’, ‘p’, ‘f’, ‘s’ を 規 定 し て い ま す 。 GNU find は 、 こ の 他 に ド ア (door) を 表 す ‘D’ も サ ポ ー ト し て い ま す 。 こ れ が 使 え る の は 、 OS が こ の 機 能 を 提 供 し て い る 場 合 で す 。 さ ら に 、 GNU find で は 、 複 数 の 型 指 定 を 一 度 に 行 う こ と が 可 能 で あ り 、 そ の 場 合 に は 、 カ ン マ で 区 切 っ た リ ス ト を 指 定 し ま す 。 |
||
|
-ok |
サ ポ ー ト さ れ て い ま す 。 プ ロ ン プ ト に 対 す る 入 力 は 、 ‘yes’、 ‘no’ を 表 す パ タ ー ン に 従 っ て 解 釈 さ れ ま す 。 そ の パ タ ー ン は 、 環 境 変 数 LC_MESSAGES の 設 定 内 容 に よ り 決 定 し ま す 。 環 境 変 数 POSIXLY_CORRECT が 設 定 さ れ て い る 場 合 は 、 そ の パ タ ー ン が 、 ‘yes’、 ‘no’ の 入 力 に 対 す る シ ス テ ム 定 義 と し て 扱 わ れ ま す 。 nl_langinfo (3) に 関 す る ド キ ュ メ ン ト 、 特 に YESEXPR と NOEXPR に つ い て 参 照 し て く だ さ い 。 POSIXLY_CORRECT が 設 定 さ れ て い な い 場 合 、 そ の パ タ ー ン は 、 find が 持 っ て い る メ ッ セ ー ジ カ タ ロ グ か ら 取 得 さ れ ま す 。 |
||
|
-newer |
サ ポ ー ト さ れ て い ま す 。 指 定 さ れ た フ ァ イ ル が シ ン ボ リ ッ ク リ ン ク の 場 合 は 、 必 ず リ ン ク 先 が 参 照 さ れ ま す 。 こ れ は 以 前 の バ ー ジ ョ ン か ら 変 更 さ れ た も の で あ り 、 以 前 は 、 比 較 に 用 い る 時 間 を シ ン ボ リ ッ ク リ ン ク か ら 取 得 し て い ま し た 。 「 履 歴 」 セ ク シ ョ ン を 参 照 し て く だ さ い 。 |
||
|
-perm |
サ ポ ー ト さ れ て い ま す 。 環 境 変 数 POSIXLY_CORRECT が 設 定 さ れ て い な い 場 合 に は 、 POSIX で は 認 め ら れ て い な い (た と え ば 、 +a+x の よ う な ) モ ー ド 引 数 で あ っ て も 、 後 方 互 換 の た め に 利 用 で き る も の が あ り ま す 。 |
そ の 他 の プ ラ イ マ リ
式 を 構 成 す る プ ラ イ マ リ (primary) と し て 、 -atime , -ctime , -depth , -group , -links , -mtime , -nogroup , -nouser , -perm , -print , -prune , -size , -user -xdev が 、 す べ て サ ポ ー ト さ れ て い ま す 。
POSIX 規 格 は 、 カ ッ コ ‘(’, ‘)’、 否 定 ‘!’、 論 理 AND/OR の オ ペ レ ー タ ー -a , -o を 規 定 し て い ま す 。
上 記 を 除 い た オ プ シ ョ ン 、 述 語 、 式 な ど は 、 す べ て POSIX 規 格 に は な い 拡 張 で す 。 た だ し そ の 拡 張 の 多 く は 、 GNU find に 特 有 な も の で は あ り ま せ ん 。
POSIX 規 格 に お け る find は 、 ル ー プ の 検 出 が で き な け れ ば な ら な い と 定 め て い ま す 。
find ユ ー テ ィ リ テ ィ は 、 無 限 ル ー プ を 検 出 で き な け れ ば な り ま せ ん 。 無 限 ル ー プ と は 、 処 理 対 象 と な っ た フ ァ イ ル の 上 位 デ ィ レ ク ト リ が 、 以 前 に 処 理 し て い た も の で あ っ て 、 そ の デ ィ レ ク ト リ に 入 る こ と で す 。 無 限 ル ー プ を 検 出 し た 場 合 、 find は 、 診 断 メ ッ セ ー ジ を 標 準 エ ラ ー 出 力 に 書 き 出 す も の と し ま す 。 そ し て 、 デ ィ レ ク ト リ 階 層 上 で の 検 索 位 置 を 復 旧 す る か 、 あ る い は 終 了 す る も の と し ま す 。
GNU find は 、 こ の 要 件 を 満 た し て い ま す 。 上 位 デ ィ レ ク ト リ へ の ハ ー ド リ ン ク を 含 ん だ デ ィ レ ク ト リ と 、 そ う い っ た も の を 含 ま な い デ ィ レ ク ト リ を 比 較 し て み る と 、 デ ィ レ ク ト リ の リ ン ク 数 は 、 前 者 の 方 が 少 な く な る こ と が よ く あ り ま す 。 こ の こ と が あ る た め 、 上 位 デ ィ レ ク ト リ へ の リ ン ク で あ る サ ブ デ ィ レ ク ト リ に 対 し て 、 GNU find は 、 最 適 化 に よ っ て 、 そ の デ ィ レ ク ト リ を 調 べ な い ケ ー ス が 発 生 し ま す 。 find は 実 際 に 、 そ う い っ た サ ブ デ ィ レ ク ト リ に 入 っ て い か な い た め 、 診 断 メ ッ セ ー ジ の 出 力 を 抑 え る こ と が で き ま す 。 わ か り に く い 処 理 か も し れ ま せ ん が 、 実 際 に こ の 動 作 に 期 待 す る 人 は 、 ま ず い ま せ ん 。 -noleaf オ プ シ ョ ン の 指 定 に よ っ て 、 葉 (leaf) に 関 す る 最 適 化 処 理 が 無 効 に な っ て い た 場 合 、 デ ィ レ ク ト リ の 各 エ ン ト リ は 、 必 ず 調 べ ら れ ま す 。 し た が っ て 診 断 メ ッ セ ー ジ は 、 必 要 な 場 面 で 表 示 さ れ ま す 。 シ ン ボ リ ッ ク リ ン ク を 使 っ て い れ ば 、 フ ァ イ ル シ ス テ ム 上 に こ の よ う な リ ン ク を 作 り 出 す こ と は で き ま せ ん 。 た だ し -L オ プ シ ョ ン や -follow オ プ シ ョ ン を 指 定 し て い る と き に は 、 シ ン ボ リ ッ ク リ ン ク の ル ー プ が 見 つ か る と 、 診 断 メ ッ セ ー ジ が 表 示 さ れ ま す 。 ハ ー ド リ ン ク を 含 む ル ー プ の 場 合 と 同 様 に 、 葉 に 関 す る 最 適 化 に よ っ て 、 find が シ ン ボ リ ッ ク リ ン ク に 対 し て 、 stat() や chdir() を 用 い る 必 要 が な い と 判 断 す る こ と が あ る た め 、 診 断 情 報 は 、 か な り の 頻 度 で 必 要 な く な り ま す 。
-d オ プ シ ョ ン は 、 各 種 の BSD シ ス テ ム と の 互 換 性 の た め に サ ポ ー ト さ れ て い ま す 。 し た が っ て 、 こ れ を 使 う の で は な く 、 POSIX に 準 拠 す る -depth オ プ シ ョ ン を 用 い て く だ さ い 。
環 境 変 数 POSIXLY_CORRECT は 、 テ ス ト -regex や -iregex の 動 作 に 影 響 を 与 え ま せ ん 。 こ う い っ た テ ス ト は 、 POSIX で は 規 定 さ れ て い な い た め で す 。
環 境 変 数
|
LANG |
国 際 化 関 連 の 環 境 変 数 に お い て 、 値 が 設 定 さ れ て い な い 、 あ る い は null で あ る も の に 対 し て 、 デ フ ォ ル ト 値 を 提 供 し ま す 。 |
|||
|
LC_ALL |
こ の 環 境 変 数 に 、 空 文 字 列 で は な い 値 が 設 定 さ れ て い れ ば 、 国 際 化 関 連 の 環 境 変 数 を 上 書 き し ま す 。 |
LC_COLLATE
POSIX の 規 定 で は 、 こ の 環 境 変 数 は 、 テ ス ト -name で 用 い ら れ る パ タ ー ン マ ッ チ ン グ に 影 響 を 及 ぼ し ま す 。 GNU find は 、 fnmatch (3) ラ イ ブ ラ リ 関 数 を 利 用 し て い る の で 、 LC_COLLATE へ の 対 応 は 、 シ ス テ ム の ラ イ ブ ラ リ 次 第 で す 。 ま た こ の 変 数 は 、 ア ク シ ョ ン -ok の 入 力 値 の 解 釈 に も 影 響 し ま す 。 -ok に お け る 入 力 値 を 解 釈 す る も の と し て 、 実 際 に 用 い ら れ る パ タ ー ン は 、 LC_MESSAGES 変 数 の 値 に よ っ て 決 定 さ れ ま す が 、 そ の パ タ ー ン の 中 に 角 カ ッ コ に よ る 表 現 が 用 い ら れ て い る と 、 LC_COLLATE の 影 響 を 受 け る こ と に な り ま す 。
LC_CTYPE
シ ス テ ム の fnmatch (3) ラ イ ブ ラ リ 関 数 が こ の 環 境 変 数 を サ ポ ー ト し て い る 場 合 、 こ の 環 境 変 数 は 、 正 規 表 現 で 使 用 さ れ る 文 字 ク ラ ス と 、 -name テ ス ト で 使 わ れ る 文 字 ク ラ ス の 扱 い 方 に 影 響 を 及 ぼ し ま す 。 ア ク シ ョ ン -ok の プ ロ ン プ ト に お け る ユ ー ザ ー 入 力 値 の 解 釈 に は 、 正 規 表 現 が 用 い ら れ ま す が 、 こ の 変 数 は 、 そ の 正 規 表 現 内 の 文 字 ク ラ ス の 判 断 に 影 響 し ま す 。 環 境 変 数 LC_CTYPE は 、 フ ァ イ ル 名 の 表 示 時 に 、 表 示 で き な い 文 字 を 判 断 す る 処 理 に 影 響 し ま す 。 「 普 通 で は な い フ ァ イ ル 名 」 の セ ク シ ョ ン を 参 照 し て く だ さ い 。
LC_MESSAGES
国 際 化 さ れ た メ ッ セ ー ジ で 使 用 す る ロ ケ ー ル を 設 定 し ま す 。 環 境 変 数 POSIXLY_CORRECT が 設 定 さ れ て い る 場 合 は 、 こ の 変 数 に よ っ て 、 ア ク シ ョ ン -ok の プ ロ ン プ ト 入 力 値 に 対 す る 解 釈 が 決 定 し ま す 。
NLSPATH
国 際 化 メ ッ セ ー ジ カ タ ロ グ を 置 く 場 所 を 設 定 し ま す 。
|
PATH |
-exec , -execdir , -ok , -okdir か ら 呼 び 出 さ れ る 実 行 フ ァ イ ル が 、 ど こ に あ る か を 検 索 す る デ ィ レ ク ト リ に 影 響 し ま す 。 |
POSIXLY_CORRECT
-ls や -fls が 使 用 す る ブ ロ ッ ク サ イ ズ を 決 定 し ま す 。 POSIXLY_CORRECT が 設 定 さ れ て い る 場 合 は 、 1 ブ ロ ッ ク が 512 バ イ ト 、 設 定 さ れ て い な い 場 合 は 、 1 ブ ロ ッ ク が 1024 バ イ ト に な り ま す 。
ま た こ の 変 数 を 設 定 す る と 、 デ フ ォ ル ト で 警 告 メ ッ セ ー ジ を 出 力 し ま せ ん (つ ま り -nowarn が 暗 に 指 定 さ れ ま す )。 な ぜ な ら POSIX の 規 定 で は 、 -ok の プ ロ ン プ ト を 除 く と 、 標 準 エ ラ ー に 出 力 さ れ る メ ッ セ ー ジ は 、 す べ て 診 断 情 報 で あ り 、 終 了 ス テ ー タ ス は 0 以 外 を 返 さ な け れ ば な ら な い か ら で す 。
POSIXLY_CORRECT が 設 定 さ れ て い な い 場 合 、 +zzz が 適 正 な シ ン ボ リ ッ ク モ ー ド 表 現 で な か っ た ら 、 -perm +zzz と い う 記 述 は 、 -perm /zzz と し て 扱 わ れ ま す 。 POSIXLY_CORRECT が 設 定 さ れ て い る 場 合 、 こ の 記 述 は エ ラ ー に な り ま す 。
POSIXLY_CORRECT が 設 定 さ れ て い る と 、 ア ク シ ョ ン -ok の プ ロ ン プ ト に 対 す る 入 力 値 の 解 釈 は 、 find の 持 つ メ ッ セ ー ジ 翻 訳 を 用 い る の で は な く 、 シ ス テ ム の メ ッ セ ー ジ カ タ ロ グ に 従 っ て 行 わ れ ま す 。
|
TZ |
タ イ ム ゾ ー ン に 影 響 し ま す 。 タ イ ム ゾ ー ン は 、 -printf や -fprintf の 時 間 関 連 デ ィ レ ク テ ィ ブ に お い て 利 用 さ れ ま す 。 |
例
単 純 な ‘find|xargs‘ の ア プ ロ ー チ
|
• |
/tmp デ ィ レ ク ト リ 以 下 に あ る 、 core と い う 名 前 の フ ァ イ ル を 探 し て 、 そ れ を 削 除 し ま す 。 |
$ find /tmp -name core -type f -print | xargs /bin/rm -f
た だ し 、 フ ァ イ ル 名 の 中 に 、 改 行 、 シ ン グ ル ク ォ ー ト 、 ダ ブ ル ク ォ ー ト 、 空 白 文 字 が 含 ま れ る 場 合 に は 、 こ の コ マ ン ド は 正 し く 動 作 し ま せ ん 。
安 全 な ‘find -print0 | xargs -0‘ に よ る ア プ ロ ー チ
|
• |
/tmp デ ィ レ ク ト リ 以 下 に あ る 、 core と い う 名 前 の フ ァ イ ル を 探 し て 、 そ れ を 削 除 し ま す 。 フ ァ イ ル や デ ィ レ ク ト リ の 名 前 に 、 シ ン グ ル ク ォ ー ト 、 ダ ブ ル ク ォ ー ト 、 空 白 、 改 行 な ど が 含 ま れ て い て も 、 適 切 に 処 理 さ れ ま す 。 |
$ find /tmp -name core -type f -print0 | xargs -0 /bin/rm -f
テ ス ト -name は 、 -type よ り も 前 に 置 い て い ま す 。 こ れ は 、 stat (2) の 呼 び 出 し が 、 す べ て の フ ァ イ ル に 対 し て 行 わ れ る こ と を 防 ぐ た め で す 。
た だ し 、 find が フ ァ イ ル シ ス テ ム 内 を 検 索 し て 、 一 致 す る フ ァ イ ル を 出 力 す る 時 間 と 、 xargs に よ る コ マ ン ド 起 動 が そ の フ ァ イ ル を 処 理 す る 時 間 と の 間 で は 、 ま だ 競 合 が 発 生 す る 点 に 注 意 し て く だ さ い 。
任 意 の 検 索 開 始 ポ イ ン ト か ら の 処 理
|
• |
プ ロ グ ラ ム proggy と い う も の が あ る と し て 、 あ ら か じ め 処 理 を 行 っ て 、 大 量 の NUL 区 切 り の フ ァ イ ル 一 覧 を 作 る も の で あ っ た と し ま す 。 こ れ を 検 索 開 始 ポ イ ン ト と と し て 処 理 を 行 っ て 、 そ の 中 か ら 通 常 フ ァ イ ル と 空 の フ ァ イ ル を 検 索 し ま す 。 |
$ proggy | find -files0-from - -maxdepth 0 -type f -empty
‘-files0-from -‘ と 記 述 し て い る 部 分 は 、 検 索 開 始 ポ イ ン ト と す る 名 前 を 標 準 入 力 か ら 、 つ ま り パ イ プ か ら 読 み 込 む こ と を 表 し て い ま す 。 そ し て -maxdepth 0 は サ ブ デ ィ レ ク ト リ へ の 再 帰 的 な 検 索 は 行 わ ず に 、 そ こ に 明 示 さ れ た 対 象 の み を 検 索 す る よ う に し て い ま す (検 索 開 始 ポ イ ン ト の 指 定 が た だ 1 つ で あ る 場 合 )。
各 フ ァ イ ル に 対 す る コ マ ン ド 実 行
|
• |
カ レ ン ト デ ィ レ ク ト リ 以 下 の 各 フ ァ イ ル に 対 し て file を 実 行 し ま す 。 |
$ find . -type f -exec file '{}' \;
波 カ ッ コ を シ ン グ ル ク ォ ー ト で 囲 ん で い る 点 に 注 意 し て く だ さ い 。 こ れ は 、 句 読 点 が シ ェ ル ス ク リ プ ト の 記 号 と し て 、 解 釈 さ れ な い よ う に す る た め で す 。 同 様 の こ と と し て 、 セ ミ コ ロ ン も バ ッ ク ス ラ ッ シ ュ を 使 っ て エ ス ケ ー プ し て い ま す 。 シ ン グ ル ク ォ ー ト を 使 う の で も か ま い ま せ ん 。
性 能 や セ キ ュ リ テ ィ の こ と を 考 慮 す る と 、 ‘-exec ... +‘ と い う 記 述 が 望 ま れ る ケ ー ス が 多 い か も し れ ま せ ん 。
異 な る 2 つ の ア ク シ ョ ン 、 フ ァ イ ル シ ス テ ム 検 索 は 1 回
|
• |
フ ァ イ ル シ ス テ ム を 検 索 す る の は 1 回 だ け に し て 、 setuid ビ ッ ト が 立 っ て い る フ ァ イ ル や デ ィ レ ク ト リ の 一 覧 は /root/suid.txt に 出 力 し 、 サ イ ズ が 大 き い フ ァ イ ル の 一 覧 は /root/big.txt に 出 力 す る よ う に し ま す 。 |
$ find / \
\( -perm -4000 -fprintf
/root/suid.txt '%#m %u %p\n' \) , \
\( -size +100M -fprintf /root/big.txt '%-10s %p\n'
\)
こ の 例 で は 、 初 め の 2 つ の 行 に 対 し て 、 行 継 続 文 字 '\' を 用 い て い ま す 。 シ ェ ル が コ マ ン ド 読 み 込 み を 行 う に あ た っ て 、 次 の 行 も 継 続 し て 読 み 込 む よ う に 指 示 し て い ま す 。
期 間 の 指 定 を 使 っ た フ ァ イ ル 検 索
|
• |
ホ ー ム デ ィ レ ク ト リ 内 の フ ァ イ ル の 中 か ら 、 修 正 時 間 が 24 時 間 未 満 の フ ァ イ ル を 検 索 し ま す 。 |
$ find $HOME -mtime 0
こ の コ マ ン ド が そ う い う 動 作 に な る の は 、 各 フ ァ イ ル の 最 終 更 新 時 間 が 、 24 時 間 単 位 で 割 ら れ て 、 余 り は 捨 て ら れ る か ら で す 。 つ ま り 、 フ ァ イ ル が -mtime 0 に 一 致 す る の は 、 過 去 24 時 間 未 満 の 間 に 更 新 さ れ て い る こ と を 表 し ま す 。
許 可 属 性 を 使 っ た フ ァ イ ル 検 索
|
• |
実 行 可 能 で あ り 、 読 み 出 し 不 能 な フ ァ イ ル を 探 し ま す 。 |
$ find /sbin /usr/sbin -executable \! -readable -print
|
• |
フ ァ イ ル の 所 有 者 と グ ル ー プ が 読 み 書 き 可 能 で あ っ て 、 他 ユ ー ザ ー は 、 読 み 込 み の み で 書 き 込 み 不 可 で あ る フ ァ イ ル を 探 し ま す 。 |
$ find . -perm 664
上 に 示 す 条 件 を 満 た す フ ァ イ ル で あ っ て も 、 さ ら に 別 の 許 可 属 性 ビ ッ ト も 立 っ て い る よ う な フ ァ イ ル (た と え ば 、 他 ユ ー ザ ー が 実 行 で き る な ど ) は 、 こ の 条 件 に 一 致 し ま せ ん 。
|
• |
フ ァ イ ル の 所 有 者 と グ ル ー プ が 読 み 書 き 可 能 で あ り 、 他 ユ ー ザ ー も 読 み 込 み が 可 能 で あ る よ う な フ ァ イ ル を 探 し ま す 。 そ れ 以 外 の 許 可 属 性 ビ ッ ト (た と え ば 実 行 ビ ッ ト ) が 立 っ て い て も か ま い ま せ ん 。 |
$ find . -perm -664
し た が っ て 上 は 、 た と え ば モ ー ド が 0777 で あ る よ う な フ ァ イ ル に も 一 致 し ま す 。
|
• |
(フ ァ イ ル の 所 有 者 、 グ ル ー プ 、 他 ユ ー ザ ー の 誰 で も 良 い か ら ) 書 き 込 み 可 能 な フ ァ イ ル を 探 し ま す |
$ find . -perm /222
|
• |
フ ァ イ ル の 所 有 者 あ る い は グ ル ー プ の い ず れ か が 、 書 き 込 み 可 能 な フ ァ イ ル を 探 し ま す 。 |
$ find . -perm /220
$ find . -perm /u+w,g+w
$ find . -perm /u=w,g=w
上 の コ マ ン ド は 3 つ と も 同 じ 動 作 を し ま す 。 1 つ め は 、 フ ァ イ ル の 許 可 属 性 を 8 進 数 で 表 し て い ま す 。 残 り の 2 つ は 、 シ ン ボ ル に よ る 表 現 形 式 を 利 用 し て い ま す 。 フ ァ イ ル が 一 致 す る 際 に は 、 所 有 者 と グ ル ー プ の 両 方 が 書 き 込 み 可 能 で あ る 必 要 は な く 、 ど ち ら か 一 方 が 満 た さ れ れ ば 一 致 し ま す 。
|
• |
フ ァ イ ル の 所 有 者 あ る い は グ ル ー プ が 、 と も に 書 き 込 み 可 能 で あ る よ う な フ ァ イ ル を 探 し ま す 。 |
$ find . -perm -220
$ find . -perm -g+w,u+w
上 の コ マ ン ド は 同 じ 処 理 を 行 な い ま す 。
|
• |
権 限 に 関 し て 、 さ ら に 複 雑 な 検 索 を 以 下 に 示 し ま す 。 |
$ find . -perm -444 -perm
/222 \! -perm /111
$ find . -perm -a+r -perm /a+w \! -perm /a+x
こ の 2 つ の コ マ ン ド は 、 両 方 と も 次 の よ う な 条 件 の フ ァ イ ル を 探 し ま す 。 つ ま り 、 誰 に で も 読 み 出 す こ と が 可 能 ( -perm -444 ま た は -perm -a+r ) で あ っ て 、 書 き 込 み 許 可 ビ ッ ト が 少 な く と も 1 つ は 立 っ て い る も の ( -perm /222 ま た は -perm /a+w )、 た だ し 誰 に も 実 行 が で き な い も の ( ! -perm /111 や ! -perm /a+x )、 と い う も の で す 。
除 外 - フ ァ イ ル や サ ブ デ ィ レ ク ト リ の 除 き 方
|
• |
/source-dir の 内 容 を /dest-dir に コ ピ ー し ま す 。 た だ し .snapshot と い う 名 前 の フ ァ イ ル 、 ま た は デ ィ レ ク ト リ (そ の 中 身 ) は 除 き ま す 。 さ ら に 、 名 前 が ‘~’ で 終 わ る フ ァ イ ル 、 ま た は デ ィ レ ク ト リ も 除 き ま す が 、 そ の 中 身 ま で は 除 き ま せ ん 。 |
$ cd /source-dir
$ find . -name .snapshot -prune -o \( \! -name '*˜'
-print0 \) \
| cpio -pmd0 /dest-dir
-prune -o \( ... -print0 \) と い う 形 は 、 ご く 普 通 に 利 用 さ れ ま す 。 考 え 方 と し て は 、 -prune の 前 に あ る 式 が 、 取 り 除 く 対 象 に な る と い う こ と で す 。 ア ク シ ョ ン -prune 自 体 は 、 返 り 値 と し て true を 返 し ま す 。 し た が っ て 、 直 後 に -o が あ る お か げ で 、 取 り 除 き (prune) の 対 象 に な ら な か っ た デ ィ レ ク ト リ が 、 -o の 右 辺 に よ っ て 評 価 さ れ る こ と に な り ま す (取 り 除 き の 対 象 に な っ た デ ィ レ ク ト リ の 中 身 は 、 処 理 の 対 象 に な っ て い な い の で 、 中 身 を 考 慮 す る 必 要 は あ り ま せ ん )。 -o の 右 辺 の 式 を カ ッ コ で 囲 ん で い る の は 、 わ か り や す く す る た め で す 。 こ の よ う に 記 述 す る こ と で 、 ア ク シ ョ ン -print0 の 処 理 対 象 が 、 -prune の 処 理 対 象 以 外 あ る こ と が 、 は っ き り し ま す 。 テ ス ト と テ ス ト の 間 に あ る ‘and’ 条 件 は 、 -o よ り も 強 く 結 び つ く も の で あ っ て 、 そ れ が デ フ ォ ル ト に な っ て い ま す が 、 カ ッ コ で 囲 め ば 、 ど の よ う に 処 理 さ れ る か が よ く わ か り ま す 。
|
• |
以 下 に 示 さ れ る よ う な プ ロ ジ ェ ク ト デ ィ レ ク ト リ が あ っ て 、 さ ら に 、 関 連 す る SCM の 管 理 デ ィ レ ク ト リ が あ る と し ま す 。 こ れ に 対 し て 、 プ ロ ジ ェ ク ト ル ー ト か ら 効 率 の 良 い 検 索 を 行 い ま す 。 |
$ find repo/ \
\( -exec test -d '{}/.svn'
\; \
-or -exec test -d '{}/.git' \; \
-or -exec test -d '{}/CVS' \; \
\) -print -prune
出 力 例 :
repo/project1/CVS
repo/gnu/project2/.svn
repo/gnu/project3/.svn
repo/gnu/project3/src/.svn
repo/project4/.git
こ の 例 で は 、 -prune を 指 定 す る こ と に よ っ て 、 す で に 対 象 が 見 つ か っ た デ ィ レ ク ト リ の 配 下 は 、 そ れ 以 上 の 検 索 が 不 要 な の で 、 検 索 を 行 わ な い よ う に し て い ま す (た と え ば project3/src は 検 索 さ れ ま せ ん 。 そ の 理 由 は project3/.svn が 、 す で に 見 つ か っ て い る か ら で す )。 し か し 、 と な り 合 わ せ の デ ィ レ ク ト リ (た と え ば 、 project2 と project3 ) は 、 確 実 に 検 索 さ れ ま す 。
こ の 他 の 利 用 例
|
• |
複 数 の フ ァ イ ル タ イ プ を 検 索 し ま す 。 |
$ find /tmp -type f,d,l
フ ァ イ ル タ イ プ と し て 、 カ ン マ 区 切 り の リ ス ト (GNU 拡 張 ) を 指 定 し て 、 そ れ ぞ れ フ ァ イ ル 、 デ ィ レ ク ト リ 、 シ ン ボ リ ッ ク リ ン ク を /tmp デ ィ レ ク ト リ の 中 か ら 検 索 し ま す 。 同 じ こ と は 、 や や 長 く な り ま す が 、 移 植 性 の 高 い 記 述 と し て 、 以 下 の よ う に し て も 同 じ で す 。
$ find /tmp \( -type f -o -type d -o -type l \)
|
• |
特 定 の 名 前 needle を 持 っ た フ ァ イ ル を 検 索 し て 、 最 初 に そ れ が 見 つ か っ た 時 点 で 、 す ぐ に 終 了 す る よ う に し ま す 。 |
$ find / -name needle -print -quit
|
• |
-printf ア ク シ ョ ン の 書 式 デ ィ レ ク テ ィ ブ %f と %h が 、 境 界 条 件 に お い て 、 ど の よ う に 解 釈 さ れ る か を 示 し ま す 。 |
$ find . .. / /tmp
/tmp/TRACE compile compile/64/tests/find -maxdepth 0 -printf
’[%h][%f]\n’
[.][.]
[.][..]
[][/]
[][tmp]
[/tmp][TRACE]
[.][compile]
[compile/64/tests][find]
終 了 ス テ ー タ ス
find は 、 す べ て の フ ァ イ ル を 正 常 に 処 理 で き れ ば 、 ス テ ー タ ス 0 で 終 了 し ま す 。 エ ラ ー が 起 き た 場 合 は 、 1 以 上 を 返 し ま す 。 こ こ で は 、 わ ざ と 大 ま か な 説 明 と し て い ま す が 、 返 り 値 が 0 以 外 だ っ た 場 合 、 find の 結 果 は 正 し い と 思 わ な い で く だ さ い 。
エ ラ ー が 発 生 し た 場 合 、 find は 、 指 定 さ れ た ア ク シ ョ ン を 完 了 し な い ま ま 、 そ の 場 で 終 了 す る こ と が あ り ま す 。 た と え ば 、 検 索 開 始 ポ イ ン ト の 中 に は 、 検 索 さ れ ず に 終 わ る も の も あ り ま す 。 あ る い は -exec ... {} + や -execdir ... {} + に お い て 、 ま だ 呼 び 出 し が 行 わ れ て い な い プ ロ グ ラ ム が 、 実 行 さ れ な い ま ま 終 了 す る こ と も あ り ま す 。
履 歴
findutils-4.2.2 以 降 、 フ ァ イ ル 名 の パ タ ー ン に 使 わ れ る シ ェ ル の メ タ 文 字 (‘*’, ‘?’, ‘[]’ な ど ) は 、 先 頭 の ‘.’ に 一 致 し ま す 。 こ れ は IEEE POSIX interpretation 126 が 要 求 し て い る た め で す 。
findutils-4.3.3 以 降 -perm /000 は 、 ど ん な フ ァ イ ル に も 一 致 し な い 、 で は な く 、 す べ て の フ ァ イ ル に 一 致 す る 、 に な り ま し た 。
ナ ノ 秒 ま で 表 現 す る タ イ ム ス タ ン プ は 、 findutils-4.3.3 で 実 装 さ れ ま し た 。
|
findutils-4.3.11 以 降 、 ア ク シ ョ ン -delete の 処 理 に 失 敗 す る と 、 find の 終 了 ス テ ー タ ス は 0 以 外 の 値 に な り ま す 。 た だ し 、 find は 、 そ の 場 で す ぐ に は 終 了 し ま せ ん 。 以 前 の バ ー ジ ョ ン で は 、 -delete の 処 理 が 失 敗 し て も 、 find の 終 了 ス テ ー タ ス と は 無 関 係 で し た 。 |
-perm +MODE と い う 文 法 は 、 findutils-4.5.12 に お い て 削 除 さ れ ま し た 。 代 わ り に 、 -perm /MODE を 使 用 し て く だ さ い 。 +MODE と い う 文 法 は 、 2005 年 に リ リ ー ス さ れ た findutils-4.2.21 以 降 、 非 推 奨 と な っ て い ま す 。
バ グ で は な い も の
意 外 な オ ペ レ ー タ ー 優 先 順 位
以 下 の よ う な コ マ ン ド find . -name afile -o -name bfile -print は 、 afile を 出 力 し ま せ ん 。 な ぜ な ら 実 際 に は find . -name afile -o \( -name bfile -a -print \) と 同 じ も の だ か ら で す 。 -a の 優 先 順 位 は -o よ り も 高 い こ と を 忘 れ な い で く だ さ い 。 ま た テ ス ト と テ ス ト の 間 に 、 オ ペ レ ー タ ー が 指 定 さ れ て い な い け れ ば 、 -a で あ る と み な さ れ る 点 も 注 意 し て く だ さ い 。
エ ラ ー メ ッ セ ー ジ “paths must precede expression”
$ find .
-name *.c -print
find: paths must precede expression
find: possible unquoted pattern after predicate
‘-name’?
*.c
と い う パ タ ー
ン を シ ェ ル が
展 開 し た 際 に
、 カ レ ン ト デ
ィ レ ク ト リ の
複 数 フ ァ イ ル
に 該 当 し た 場
合 に 、 こ の エ
ラ ー が 発 生 し
ま す 。 こ の 場
合 に は 、 対 象
と な っ た フ ァ
イ ル 名 が 、
find
に お け る コ マ
ン ド ラ イ ン 上
に 、 以 下 の よ
う に 受 け 渡 さ
れ る こ と に な
り ま す 。
find . -name frcode.c locate.c word_io.c -print
上 の コ マ ン ド
は 、 も ち ろ ん
動 作 し ま せ ん
。 述 語 表 現 で
あ る
-name
の 引 数
は 、 パ タ ー ン
を 1 つ し か 受 け
つ け な い か ら
で す 。 そ の よ
う な 記 述 と す
る の で は な く
、 パ タ ー ン の
表 現 部 分 は 、
ク ォ ー ト で く
く る か 、 ワ イ
ル ド カ ー ド を
エ ス ケ ー プ し
て く だ さ い 。
以 下 の よ う に
す る こ と で 、
フ ァ イ ル 名 が
シ ェ ル に よ っ
て 展 開 さ れ る
こ と な く 、
find
の フ ァ イ ル 名
の 一 致 検 索 の
際 に 、 ワ イ ル
ド カ ー ド を 用
い た パ タ ー ン
検 索 が で き る
よ う に な り ま
す 。
$ find . -name '*.c' -print
$ find . -name \*.c -print
バ グ
POSIX が 規 定 す る find の 動 作 に は 、 セ キ ュ リ テ ィ 上 の 問 題 が あ っ て 、 こ れ を 修 正 す る こ と は で き ま せ ん 。 た と え ば 、 ア ク シ ョ ン -exec は 、 本 質 的 に 安 全 で は な い た め 。 代 わ り に -execdir を 使 っ て く だ さ い 。
環 境 変 数 LC_COLLATE は 、 ア ク シ ョ ン -ok に 対 し て は 、 何 の 効 果 も 及 ぼ し ま せ ん 。
バ グ 報 告
GNU findutils
オ ン ラ イ ン ヘ
ル プ :
<https://www.gnu.org/software/findutils/#get-help>
翻 訳 に 関 す る
バ グ 報 告
<https://translationproject.org/team/>
そ の 他 の 問 題 に つ い て GNU Savannah バ グ ト ラ ッ カ ー 経 由 で の 報 告 :
<https://savannah.gnu.org/bugs/?group=findutils>
GNU findutils パ ッ ケ ー ジ の メ ー リ ン グ リ ス ト bug-findutils に お い て 議 論 さ れ て い る 全 般 的 な ト ピ ッ ク :
<https://lists.gnu.org/mailman/listinfo/bug-findutils>
著 作 権
Copyright ©
1990-2022 Free Software Foundation, Inc. License GPLv3+: GNU
GPL version 3 or later
<https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and
redistribute it. There is NO WARRANTY, to the extent
permitted by law.
関 連 項 目
chmod (1), locate (1), ls (1), updatedb (1), xargs (1), lstat (2), stat (2), ctime (3) fnmatch (3), printf (3), strftime (3), locatedb (5), regex (7)
完
全 な ド キ ュ メ
ン ト
<https://www.gnu.org/software/findutils/find>
ま た ロ ー カ ル
に お い て は
info
find
に よ り 参 照
で き ま す 。