inode 番 号 (十 進 数
表 示 )。
ィ ス ク
ス ペ ー ス 使 用
量 を 1 ブ ロ ッ ク 1
キ ロ バ イ ト の
ブ ロ ッ ク 数 で
表 示 す る 。 デ
ィ ス ク ス ペ ー
ス は 、 フ ァ イ
ル シ ス テ ム の
ブ ロ ッ ク サ イ
ズ の 倍 数 で 割
り 当 て ら れ る
の で 、 こ の 表
示 は た い て い
%s/1024 よ り 大 き い
。 だ が 、 フ ァ
イ ル が 穴 空 き
フ ァ イ ル (sparse file) の
場 合 は 、 %s/1024 よ
り 小 さ く な る
こ と も あ る 。
シ ン ボ
リ ッ ク リ ン ク
の 参 照 先 (フ ァ
イ ル が シ ン ボ
リ ッ ク リ ン ク
で な か っ た ら
、 空 文 字 列 )。
フ ァ イ
ル の 許 可 属 性
ビ ッ ト (8 進 数 表
示 )。 こ の オ プ
シ ョ ン が 使 用
し て い る 数 値
は 、 Unix の た い て
い の 実 装 が 使
用 し て い る 「
伝 統 的 な 」 数
値 で あ る 。 し
か し 、 ご 使 用
の シ ス テ ム の
実 装 で は 、 8 進
数 で 表 示 す る
許 可 属 性 ビ ッ
ト の 並 び 方 が
独 特 か も し れ
な い 。 そ の 場
合 は 、 フ ァ イ
ル の 許 可 属 性
の 実 際 の 値 と %m
の 出 力 と が 、
相 違 す る こ と
に な る 。 こ の
数 値 の 先 頭 に 0
を 付 け て 表 示
し た い こ と も
よ く あ る が 、
そ の た め に は
、 # フ ラ グ を
使 用 す れ ば よ
い (た と え ば 、
’%#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’ 関 数 が 返
す |
形 式 で
表 示 す る 。
|
%Tk フ ァ
イ ル の 最 終 内
容 更 新 日 時 を |
|
k で 指
定 し た 書 式 で
表 示 す る 。 |
k は %A の
場 合 と 同 じ で
あ る 。
|
%u フ ァ イ
ル の 所 有 者 名
。 該 当 す る ユ
ー ザ 名 が 存 在
し な い 場 合 は
、 ユ ー ザ |
ID 番 号
。
|
%U フ ァ イ
ル の ユ ー ザ |
|
ID 番 号
。 |
|
%y フ ァ イ ル の タ
イ プ |
|
(ls −l の 表 現 と
ほ ぼ 同 じ )。 U=unknown
type |
(こ れ が
表 示 さ れ る こ
と は な い は ず
だ )
|
%Y フ ァ イ
ル の タ イ プ |
|
(表 示 は %y
と 同 じ )。 た だ
し 、 シ ン ボ リ
ッ ク |
リ ン ク
を た ど る 。 そ
の 場 合 、 L=loop, N=nonexistent
で あ る 。
|
%Z |
|
(SELinux が 有
効 な と き の み )
フ ァ イ ル の セ
キ ュ リ テ ィ ・
コ ン テ ク ス ト
。 |
%{ %[ %( 将 来
の 使 用 の た め
に 予 約 さ れ て
い る 。 一 個 の
’%’ に 上 記 以 外
の 文 字 が 続 く
場 合 、 ’%’ 文 字
は 捨 て ら れ る
が 、 そ れ に 続
く 文 字 は 表 示
さ れ る (書 式 指
定 文 字 が 新 た
に 追 加 さ れ る
か も し れ な い
の で 、 こ の 動
作 を 当 て に し
て は い け な い
。 (訳 注 : 以 前 は
そ の と お り だ
っ た が 、 現 在
で は 、 無 効 な
書 式 指 定 子 を
使 っ た 場 合 、
’%q’ の よ う に
’%’ も 表 示 さ れ
る よ う だ ))。 書
式 指 定 の 末 尾
に ’%’ が あ る と
き の 動 作 は 、
続 く 文 字 が な
い の で 不 定 で
あ る 。 ロ ケ ー
ル に よ っ て は
、 お 宅 の ド ア
の 鍵 が 見 つ か
ら な く な る か
も し れ な い 。
ま た 、 別 の ロ
ケ ー ル で は 、
お 読 み に な っ
て い る 小 説 の
最 後 の ペ ー ジ
が 消 え て し ま
う か も し れ な
い 。 書 式 指 定
子 %m と %d は フ ラ グ
#, 0, + を サ ポ
ー ト す る が 、
そ れ 以 外 の 書
式 指 定 子 で は
、 数 値 を 表 示
す る 場 合 で も
、 そ う し た フ
ラ グ を サ ポ ー
ト し な い 。 #
な ど を サ ポ ー
ト し な い 数 値
関 係 の 書 式 指
定 子 に は 、 G,
U, b, D, k, n な
ど が あ る 。 し
か し 、 書 式 フ
ラ グ ’−’ は サ
ポ ー ト さ れ て
お り 、 フ ィ ー
ル ド を (デ フ ォ
ル ト の ) 右 揃 え
か ら 左 揃 え に
変 更 す る 。 フ
ァ イ ル 名 中 の
普 通 使 わ な い
文 字 が ど の よ
う に 扱 わ れ る
か に つ い て は
、 「 変 わ り 者
の フ ァ イ ル 名
」 セ ク シ ョ ン
の 説 明 を 参 照
し て い た だ き
た い 。
|
−prune 真 を 返 す
。 処 理 対 象 の
フ ァ イ ル が デ
ィ レ ク ト リ の
場 合 は 、 そ の
デ ィ レ ク ト リ
以 下 に 降 り て
行 か な い 。 |
−depth が
指 定 し て あ る
と 、 −prune は 、
偽 を 返 し 、 そ
の 効 果 を 失 う
。 −delete を 指 定
す る と 自 動 的
に −depth が 有 効
に な る の で 、
−prune を −delete と
一 緒 に 使 っ て
も 役 に 立 た な
い 。
|
[訳 注 ]:
つ ま り 、 |
|
−prune は
指 定 さ れ た デ
ィ レ ク ト リ の
、 い わ ゆ る 枝
刈 |
り (prune) を
す る 。 バ ー ジ
ョ ン 4.3.11 以 降 の
find で は 、 −prune
の 動 作 が 、 上
の 説 明 と 少 し
違 っ て い る 。
−depth が 指 定 し
て あ る と 、
−prune が 効 果 を
失 う (す な わ ち
、 枝 刈 り を 行
わ な く な る ) こ
と は 、 そ れ 以
前 と 変 わ り が
な い が 、 返 り
値 は 真 を 返 す
よ う に な っ て
い る の だ 。 こ
れ は POSIX 準 拠 の 動
作 で あ る 。 ご
自 分 で 、 find . −depth
−path "./foo" −prune −print
な ど を 実 行 し
て 、 確 認 し て
い た だ き た い
。 −prune が 真 を
返 し て い れ ば
、 デ ィ レ ク ト
リ ./foo が 表 示 さ
れ る は ず で あ
る 。
|
−quit 直 ち
に 終 了 す る 。
動 い て い る 子
プ ロ セ ス を 残
し た ま ま 終 了
し た り は し な
い が 、 コ マ ン
ド ラ イ ン で 指
定 し た パ ス を
こ れ 以 上 処 理
す る こ と は な
い 。 た と え ば
、 |
find /tmp/foo /tmp/bar
−print −quit は 、
/tmp/foo を 表 示 す る
だ け で あ る 。
−execdir ... {} + に よ っ
て す で に 作 成
さ れ た コ マ ン
ド ラ イ ン が あ
れ ば 、 find が 終
了 す る 前 に 、
呼 び 出 し て 実
行 す る 。 終 了
ス テ ー タ ス は
、 エ ラ ー が す
で に 起 き て い
る か ど う か よ
っ て 、 0 の こ と
も 、 0 で な い こ
と も あ る 。 演
算 子 演 算 子 を
優 先 順 位 の 高
い も の か ら 順
に 列 挙 す る 。
( expr ) カ ッ コ の 内
側 を 先 に 処 理
す る 。 カ ッ コ
は シ ェ ル に と
っ て 特 別 な 意
味 を 持 っ て い
る の で 、 普 通
は ク ォ ー ト す
る 必 要 が あ る
だ ろ う 。 こ の
マ ニ ュ ア ル ペ
ー ジ で 挙 げ て
い る 例 の 多 く
で は 、 そ の た
め に バ ッ ク ス
ラ ッ シ ュ を 使
っ て い る 。 す
な わ ち ’(...)’ で
は な く 、 ’\(...\)’
と 書 い て い る
。
|
! expr |
|
expr が 偽 の 場 合
、 真 に な る 。
通 常 、 こ の 記
号 も シ ェ ル に
よ っ て 解 釈 さ
れ な い よ う に
す る 必 要 が あ
る だ ろ う 。 |
−not expr
! expr と 同
じ だ が 、 POSIX 準 拠
の 表 現 で は な
い 。
expr1 expr2 連
続 す る 二 つ の
式 は 、 and 結 合 と
解 釈 さ れ る (明
示 さ れ て い な
い が 、 式 の 間
に "−a" が あ る
と 見 な さ れ る
わ け だ )。 expr1 が
偽 の 場 合 、 expr2
は 評 価 さ れ な
い 。
expr1 −a expr2
expr1 expr2 と
同 じ 。
expr1 −and
expr2
expr1 expr2 と
同 じ だ が 、 POSIX 準
拠 の 表 現 で は
な い 。
expr1 −o
expr2
or 結 合 で
あ る 。 expr1 が 真
な ら ば 、 expr2 は
評 価 さ れ な い
。
expr1 −or
expr2
expr1 −o
expr2 と 同 じ だ が
、 POSIX 準 拠 の 表 現
で は な い 。
expr1 , expr2
リ ス ト で あ る
。 常 に expr1 と
expr2 の 両 方 が 評
価 さ れ る 。 expr1
の 値 は 捨 て ら
れ 、 expr2 の 値 が
リ ス ト 全 体 の
値 に な る 。 コ
ン マ 演 算 子 は
い く つ か の 異
な っ た タ イ プ
の 対 象 を 捜 す
と き 便 利 だ が
、 フ ァ イ ル シ
ス テ ム 階 層 の
探 索 は 一 度 し
か 行 わ れ な い
。 異 な っ た 形
で マ ッ チ し た
対 象 の 一 覧 を
そ れ ぞ れ 別 の
出 力 フ ァ イ ル
に 書 き 出 す に
は 、 −fprintf ア ク
シ ョ ン を 利 用
す れ ば よ い 。
|
[訳 注 ]: |
|
find に と っ て 演
算 子 も 引 き 数
で あ る 。 だ か
ら ’(’, ’)’, ’!’,
’,’ と い っ た 演
算 子 も 、 前 後
の 引 き 数 と の
間 に 空 白 が 必
要 だ と い う こ
と に 気 を つ け
て い た だ き た
い 。 |
多 く の
場 合 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 −N と
同 じ 。 ls は バ
ー ジ ョ ン に よ
っ て は 、 デ フ
ォ ル ト の 表 示
が −N で は な い
こ と が あ る )。
つ ま り 、 −ls
や −fls に お け
る ク ォ ー ト 方
法 と は 違 う と
い う こ と だ 。
も し 、 find の 出
力 に 使 用 す る
形 式 を 自 由 に
決 め る こ と が
で き る な ら ば
、 た い て い の
場 合 、 終 端 文
字 に 改 行 で は
な く 、 ’\0’ を
使 用 し た 方 が
よ い 。 フ ァ イ
ル 名 に は 空 白
や 改 行 が 含 ま
れ て い る こ と
が あ る か ら だ
。 ど の 文 字 に
ク ォ ー ト が 必
要 か を 判 断 す
る に は 、 環 境
変 数 ’LC_CTYPE’ の 設
定 が 使 用 さ れ
る 。
−print, −fprint ク ォ ー
ト は −printf や
−fprintf と 同 じ や
り 方 で 行 わ れ
る 。 find を ス ク
リ プ ト 中 で 使
っ て い る 場 合
や 、 マ ッ チ す
る フ ァ イ ル が
我 儘 な フ ァ イ
ル 名 を 持 っ て
い る か も し れ
な い 場 合 は 、
−print で は な く
、 −print0 の 使 用
を 考 え た 方 が
よ い だ ろ う 。
ア ク シ ョ ン
−ok と −okdir は
、 対 象 と な る
フ ァ イ ル 名 を
そ の ま ま 手 を
加 え ず に 出 力
す る 。 こ の 動
作 は 、 将 来 の
リ リ ー ス で 変
わ る か も し れ
な い 。
POSIX 規
格 に で き る だ
け 準 拠 し た 動
作 を 求 め る の
な ら 、 環 境 変
数 POSIXLY_CORRECT を 設 定 す
る と よ い 。 以
下 の オ プ シ ョ
ン や 述 語 は POSIX 規
格 (IEEE Std 1003.1, 2003 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
は 、 そ の ほ か
「 ド ア 」 を 表
す ’D’ も サ ポ ー
ト し て い る が
、 使 え る の は OS
が そ う し た フ
ァ イ ル ・ タ イ
プ を 用 意 し て
い る 場 合 の み
で あ る 。
|
−ok サ
ポ ー ト し て い
る 。 プ ロ ン プ
ト に 対 す る 応
答 は 、 |
|
"yes"、
"no" を 表 す パ |
タ ー ン
に 照 ら し て 解
釈 さ れ る が 、
そ の パ タ ー ン
は 、 環 境 変 数
’LC_MESSAGES’ を 設 定
す る こ と に よ
っ て 選 択 さ れ
る 。 環 境 変 数
’POSIXLY_CORRECT’ が 設 定
さ れ て い る 場
合 は 、 何 が 肯
定 的 応 答 (yes) で 、
何 が 否 定 的 応
答 (no) か を 決 め て
い る シ ス テ ム
の 定 義 が 、 こ
の パ タ ー ン と
し て 使 用 さ れ
る 。 nl_langinfo(3) に 関
す る シ ス テ ム
の 文 書 、 特 に
YESEXPR と NOEXPR の 部 分 を
参 照 し て ほ し
い 。 そ れ に 対
し 、 ’POSIXLY_CORRECT’ が
設 定 さ れ て い
な い 場 合 は 、
パ タ ー ン は 、
シ ス テ ム で は
な く 、 find の 持
つ メ ッ セ ー ジ
・ カ タ ロ グ か
ら 取 得 さ れ る
の で あ る 。
|
−newer サ
ポ ー ト し て い
る 。 指 定 さ れ
た フ ァ イ ル が
シ ン ボ リ ッ ク
リ ン ク の 場 合
は 、 必 ず リ ン
ク 先 が 参 照 さ
れ る |
(訳 注 : 訳
者 と し て は 、
「 −L や −H オ
プ シ ョ ン が 有
効 な 場 合 は 」
と い う 条 件 が
必 要 で は な い
か と 思 う 。
−P, −L, −H オ
プ シ ョ ン や 、
検 査 −newer の 説
明 を 参 照 )。 以
前 の バ ー ジ ョ
ン で は 、 シ ン
ボ リ ッ ク リ ン
ク そ の も の か
ら 比 較 に 使 う
日 時 を 取 得 し
て い た が 、 動
作 が こ の よ う
に 変 更 に な っ
た 。 後 述 の 「
履 歴 」 セ ク シ
ョ ン も 参 照 し
て ほ し い 。
|
−perm サ
ポ ー ト し て い
る 。 環 境 変 数 |
|
POSIXLY_CORRECT が
設 定 さ れ て い
な い 場 |
合 は 、
POSIX で は 無 効 な (た
と え ば 、 +a+x と い
っ た ) モ ー ド 指
定 の 引 き 数 も
、 後 方 互 換 の
た め に 使 用 で
き る よ う に な
っ て い る (訳 注 :
find 4.6.0 で は 、 POSIXLY_CORRECT
が 設 定 さ れ て
い な い と き で
も 、 +a+x の よ う な
−perm +mode の 形 式
は 使 え な く な
っ て い る )。 そ
の 他 の 述 語
−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
は そ う し た 要
求 に 従 っ て い
る 。 デ ィ レ ク
ト リ が そ の 中
に 上 位 デ ィ レ
ク ト リ へ の ハ
ー ド リ ン ク で
あ る エ ン ト リ
を 含 ん で い る
場 合 は 、 デ ィ
レ ク ト リ の ハ
ー ド リ ン ク 数
が 、 そ の エ ン
ト リ が 普 通 の
サ ブ デ ィ レ ク
ト リ な ら そ う
な る は ず の 数
よ り も 、 た い
て い 少 な く な
る も の だ (訳 注 :
実 際 に は 、 Linux を
始 め 、 デ ィ レ
ク ト リ の ハ ー
ド リ ン ク を 禁
止 し て い る シ
ス テ ム が 多 い
)。 そ の 結 果 、 GNU
find が 時 と し て 、
実 際 に は 上 位
デ ィ レ ク ト リ
へ の ハ ー ド リ
ン ク で あ る サ
ブ デ ィ レ ク ト
リ を 、 最 適 化
の 副 作 用 で 探
索 し な い こ と
が 起 こ り え る
。 そ の 場 合 、
find は 確 か に そ
う し た デ ィ レ
ク ト リ に 足 を
踏 み 入 れ な い
わ け だ か ら 、
「 ル ー プ 検 出
」 の 診 断 メ ッ
セ ー ジ を 出 さ
な い で も よ い
こ と に な っ て
い る 。 こ れ は
か な り 紛 ら わ
し い 動 作 か も
し れ な い が 、
find の こ の 動 作
を 本 気 で 当 て
に し て い る 人
も い な い こ と
だ ろ う 。 −noleaf
オ プ シ ョ ン を
指 定 し て 、 デ
ィ レ ク ト リ ・
ツ リ ー 上 の 葉
っ ぱ を 簡 易 判
別 す る 最 適 化
を 無 効 に し て
い る 場 合 は (訳
注 : −noleaf 参 照 )、
こ う し た デ ィ
レ ク ト リ ・ エ
ン ト リ に 対 す
る 検 査 も 省 略
さ れ ず に 行 わ
れ 、 必 要 な ら
ば 、 診 断 メ ッ
セ ー ジ が 表 示
さ れ る こ と に
な る 。 シ ン ボ
リ ッ ク リ ン ク
を 使 っ て い れ
ば 、 フ ァ イ ル
シ ス テ ム 上 に
本 物 の 循 環 を
起 こ す こ と は
な い が 、 そ れ
で も 、 −L や
−follow を 使 用 し
て い る 場 合 は
、 探 索 中 に シ
ン ボ リ ッ ク リ
ン ク の ル ー プ
に 出 会 え ば 、
診 断 メ ッ セ ー
ジ が 表 示 さ れ
る 。 ハ ー ド リ
ン ク を 含 む ル
ー プ の 場 合 と
同 様 、 葉 っ ぱ
を 簡 易 判 別 す
る 最 適 化 を 使
用 し て い る と
、 find は た い て
い の 場 合 、 シ
ン ボ リ ッ ク リ
ン ク に 対 し て
stat() や chdir() を 呼
び 出 す ま で も
な い と 知 っ て
い る こ と に な
る の で 、 ル ー
プ の 診 断 は 不
要 に な る こ と
が 多 い 。
−d
オ プ シ ョ ン は BSD
シ ス テ ム 各 種
と の 互 換 性 の
た め に サ ポ ー
ト さ れ て い る
。 だ が 、 POSIX に 準
拠 し て い る
−depth オ プ シ ョ
ン の 方 を 使 っ
た 方 が よ い 。
環 境 変 数 POSIXLY_CORRECT は
、 検 査 −regex や
−iregex の 動 作 に
影 響 を 与 え な
い 。 そ う し た
検 査 は 、 POSIX 規 格
で 規 定 さ れ て
い な い か ら で
あ る 。
|
LANG 国 際 化
関 係 の 環 境 変
数 の う ち 、 値
が 設 定 さ れ て
い な か っ た り
、
null |
だ っ た
り す る 変 数 に
対 し て 、 LANG の 値
が デ フ ォ ル ト
の 値 に な る 。
|
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は 、
フ ァ イ ル 名 が
表 示 さ れ る と
き 、 ど の 文 字
を 表 示 不 可 能
(unprintable) と 見 な す か
に も か か わ る
こ と に な る 。
「 変 わ り 者 の
フ ァ イ ル 名 」
セ ク シ ョ ン を
参 照 し て い た
だ き た い 。
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 が 設 定 さ れ
て い な い 場 合
も 、 −perm +mode の
書 式 は サ ポ ー
ト さ れ て い な
い 。 検 査 −perm
の 説 明 を 参 照
)。 POSIXLY_CORRECT が 設 定
さ れ て い る 場
合 は 、 許 可 属
性 の 前 に ’+’ を
取 る 形 式 は 、
エ ラ ー と し て
処 理 さ れ る (訳
注 : も ち ろ ん 、 +zzz
が そ れ 自 体 有
効 な シ ン ボ ル
表 現 で あ る と
き は 除 く 。 た
と え ば 、 −perm +u+x
と い っ た も の
が そ う い う 表
現 で あ る 。 こ
れ は 、 −perm 0111 と
い う 「 ぴ っ た
り 一 致 す る 」
表 現 と 等 価 に
な る )。
POSIXLY_CORRECT
が 設 定 さ れ て
い る と 、 ア ク
シ ョ ン −ok が
出 す プ ロ ン プ
ト に 対 す る ユ
ー ザ の 応 答 を
解 釈 す る 際 に
、 find の 持 つ メ
ッ セ ー ジ 翻 訳
で は な く 、 シ
ス テ ム の メ ッ
セ ー ジ ・ カ タ
ロ グ が 参 照 さ
れ る 。
|
TZ タ イ ム ゾ ー ン
に 影 響 す る 。
タ イ ム ゾ ー ン
は 、 |
|
−printf や −fprintf
の 日 |
時 に 関
係 す る 一 部 の
書 式 指 定 子 で
使 用 さ れ る 。
find /tmp
−name core −type f −print | xargs /bin/rm
−f
/tmp
デ ィ レ ク ト リ
以 下 に core と い
う 名 前 の フ ァ
イ ル を 捜 し て
、 そ れ を 消 去
す る 。 フ ァ イ
ル 名 (パ ス を 含
む ) の 中 に 改 行
、 シ ン グ ル ク
ォ ー ト 、 ダ ブ
ル ク ォ ー ト 、
空 白 な ど を 含
む も の が あ る
と 、 正 し く 動
作 し な い の で
、 注 意 す る こ
と 。
find /tmp
−name core −type f −print0 | xargs
−0 /bin/rm −f
/tmp
デ ィ レ ク ト リ
以 下 に core と い
う 名 前 の フ ァ
イ ル を 捜 し て
、 そ れ を 消 去
す る 。 フ ァ イ
ル 名 の 処 理 に
当 た っ て は 、
フ ァ イ ル や デ
ィ レ ク ト リ の
名 前 に シ ン グ
ル ク ォ ー ト 、
ダ ブ ル ク ォ ー
ト 、 空 白 、 改
行 な ど が 含 ま
れ て い て も 、
適 切 に 扱 わ れ
る よ う に し て
い る 。 検 査
−name を −type の
前 に 置 い て い
る の は 、 す べ
て の フ ァ イ ル
に 対 し て stat(2) シ
ス テ ム コ ー ル
を 行 う 無 駄 を
省 く た め で あ
る 。
find .
−type f −exec file '{}' \; カ レ
ン ト デ ィ レ ク
ト リ 以 下 の あ
ら ゆ る フ ァ イ
ル に 対 し て file コ
マ ン ド を 実 行
す る 。 中 カ ッ
コ を シ ン グ ル
ク ォ ー ト で 囲
ん で い る こ と
に 注 目 し て い
た だ き た い 。
シ ェ ル ス ク リ
プ ト の ブ ロ ッ
ク 区 切 り 記 号
と し て 解 釈 さ
れ な い よ う に
す る た め で あ
る 。 同 様 に 、
セ ミ コ ロ ン も
バ ッ ク ス ラ ッ
シ ュ を 使 っ て
保 護 し て い る
。 こ ち ら に も
シ ン グ ル ク ォ
ー ト を 使 用 し
て も よ い 。
find / \(
−perm −4000 −fprintf /root/suid.txt '%#m
%u %p\n' \) , \
\( −size +100M −fprintf /root/big.txt
'%−10s %p\n' \) 全 フ ァ
イ ル シ ス テ ム
を 一 回 だ け 探
索 し て 、 setuid ビ ッ
ト の 立 っ て い
る フ ァ イ ル や
デ ィ レ ク ト リ
の リ ス ト を
/root/suid.txt に 、 サ イ
ズ の 大 き い フ
ァ イ ル の リ ス
ト を /root/big.txt に 出
力 す る 。
find $HOME
−mtime 0 こ こ 24 時 間
の 内 に 内 容 が
更 新 さ れ た フ
ァ イ ル を ホ ー
ム デ ィ レ ク ト
リ 以 下 で 検 索
す る 。 こ の コ
マ ン ド が そ う
い う 動 作 に な
る の は 、 そ れ
ぞ れ の フ ァ イ
ル が 最 後 に 更
新 さ れ て か ら
現 在 ま で の 経
過 時 間 が 、 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 上 記 の
コ マ ン ド は 三
つ と も 同 じ 動
作 を す る 。 最
初 の も の は 、
フ ァ イ ル の 許
可 属 性 を 8 進 数
で 表 し 、 後 の
二 つ は 、 シ ン
ボ ル に よ る 表
現 形 式 を 使 っ
て い る 。 こ う
し た コ マ ン ド
は ど れ も 、 フ
ァ イ ル の 所 有
者 や グ ル ー プ
が 書 き 込 み 可
能 な フ ァ イ ル
を 捜 す 。 所 有
者 と グ ル ー プ
の 両 方 が 書 き
込 み 可 能 な 場
合 し か 、 マ ッ
チ し な い わ け
で は な い 。 ど
ち ら か 片 方 だ
け で も 十 分 で
あ る 。
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 こ の 二 つ
の コ マ ン ド は
両 方 と も 次 の
よ う な 条 件 の
フ ァ イ ル を 捜
す 。 そ の 条 件
と は 、 誰 に で
も 読 み 出 す こ
と が 可 能 で (−perm
−444 や −perm −a+r
が そ れ に に 当
た る )、 書 き 込
み 許 可 ビ ッ ト
が 少 な く と も
一 つ は 立 っ て
い る が (−perm /222 や
−perm /a+w)、 誰 に も
実 行 す る こ と
は で き な い (!
−perm /111 や ! −perm /a+x)
と い う も の で
あ る 。
cd
/source−dir
find . −name .snapshot −prune −o \( \!
−name '*~' −print0 \)|
cpio −pmd0 /dest−dir こ の
コ マ ン ド は
/source−dir の 中 身 を
/dest−dir に コ ピ ー
す る が 、 そ の
際 .snapshot と い う
名 前 の フ ァ イ
ル や デ ィ レ ク
ト リ (及 び 、 そ
の デ ィ レ ク ト
リ 内 に あ る も
の ) を 除 外 し て
い る 。 さ ら に
こ の コ マ ン ド
は 、 名 前 の 末
尾 に ~ が 付 く
フ ァ イ ル や デ
ィ レ ク ト リ も
除 外 す る が 、
そ う し た デ ィ
レ ク ト リ の 中
身 に つ い て は
除 外 の 対 象 に
し な い 。 −prune −o
\( ... −print0 \) と い う
構 文 は か な り
よ く 利 用 さ れ
る 。 こ こ で 肝
腎 な の は 、
−prune の 前 に あ
る 式 が マ ッ チ
す る 項 目 は 、
find の 探 索 の 対
象 か ら −prune に
よ っ て 取 り 除
か れ る (訳 注 :
pruned、 枝 刈 り さ れ
る ) と い う こ と
で あ る 。 し か
し 、 ア ク シ ョ
ン −prune 自 体 は
返 り 値 と し て
真 を 返 す の で
、 直 後 に 続 く
−o に よ っ て 、
探 索 の 対 象 か
ら 取 り 除 か れ
な か っ た デ ィ
レ ク ト リ に 対
し て だ け −o の
右 辺 の 評 価 が
行 わ れ る こ と
に な る (探 索 の
対 象 か ら 取 り
除 か れ た デ ィ
レ ク ト リ の 中
身 は 、 処 理 の
対 象 に す ら な
ら な い の だ か
ら 、 そ う し た
も の は も う 関
係 が な い )。
−o の 右 辺 の 式
を カ ッ コ で 囲
ん で い る の は
、 見 や す く す
る た め に す ぎ
な い 。 ア ク シ
ョ ン −print0 が 行
わ れ る の は 、
−prune が 適 用 さ
れ な か っ た 項
目 の み で あ る
こ と を 強 調 し
て い る だ け だ
。 述 語 間 の デ
フ ォ ル ト の 結
合 は and で あ り 、
and の 結 合 は −o
よ り も 強 い か
ら 、 カ ッ コ が
あ っ て も デ フ
ォ ル ト の 動 作
と 同 じ な の だ
が 、 カ ッ コ を
使 う と 、 何 を
や っ て い る か
が わ か り や す
く な る 。
find repo/
\( −exec test −d {}/.svn \; −or \
−exec test −d {}/.git \; −or −exec
test −d {}/CVS \; \) \
−print −prune 以 下 の
よ う な プ ロ ジ
ェ ク ト の デ ィ
レ ク ト リ と そ
れ に 関 連 す る SCM
(ソ ー ス コ ー ド
管 理 シ ス テ ム )
の 管 理 用 デ ィ
レ ク ト リ が あ
る 場 合 に 、 プ
ロ ジ ェ ク ト の
ル ー ト を 効 率
的 に 検 索 す る
。
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) は
き ち ん と 見 つ
か る よ う に し
て い る 。 (訳 注 :
こ の 例 の 場 合
、 カ ッ コ は 必
要 で あ る 。 and の
結 合 は or よ り も
強 い の で 。 )
find
は 、 す べ て の
フ ァ イ ル を 問
題 な く 処 理 で
き れ ば 、 ス テ
ー タ ス 0 で 終 了
す る 。 エ ラ ー
が 起 き た 場 合
の 終 了 ス テ ー
タ ス は 、 1 以 上
で あ る 。 こ こ
で は あ え て ご
く 大 雑 把 な 言
い 方 を し て い
る が 、 返 り 値
が 0 以 外 だ っ た
場 合 は 、 find が
出 し た 結 果 を
正 し い と 思 い
込 ま な い 方 が
よ い だ ろ う 。
エ ラ ー が 起 き
た 場 合 、 find は
、 指 定 さ れ た
す べ て の 動 作
を 完 了 せ ず 、
そ の 場 で 終 了
し て し ま う こ
と が あ る 。 そ
の 場 合 は 、 た
と え ば 、 探 索
開 始 点 の あ る
も の が 調 査 さ
れ な か っ た り
、 −exec ... {} + や
−execdir ... {} + で 呼 び
出 さ れ る こ と
に な っ て い る
プ ロ グ ラ ム に
実 行 さ れ な い
も の が 生 じ た
り す る か も し
れ な い 。
locate(1),
locatedb(5), updatedb(1), xargs(1),
chmod(1), fnmatch(3), regex(7),
stat(2), lstat(2), ls(1),
printf(3), strftime(3), ctime(3)
find
に は 、 Texinfo マ ニ
ュ ア ル の 形 で
保 守 さ れ て い
る 充 実 し た 文
書 が あ る 。 info
と find プ ロ グ ラ
ム が 、 御 使 用
の サ イ ト で き
ち ん と イ ン ス
ト ー ル さ れ て
い る な ら ば 、
info find と コ マ ン
ド を 打 ち 込 む
こ と で 、 詳 細
な マ ニ ュ ア ル
が 読 め る は ず
だ 。 (訳 注 : info find
だ と 、 説 明 が
途 中 か ら に な
る の で 、 info "Finding
files" と 打 ち 込 む
こ と を お 勧 め
す る 。 )
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 *.c −print
find: paths must precede expression
Usage: find [−H] [−L] [−P] [−Olevel]
[−D help|tree|search|stat|rates|opt|exec] [path...]
[expression] こ う し た エ
ラ ー が 起 き る
原 因 は 、 *.c が
シ ェ ル に よ っ
て 展 開 さ れ て
、 find が 実 際 に
受 け 取 る コ マ
ン ド ラ イ ン が
、 た と え ば 次
の よ う な も の
に な っ て し ま
う か ら で あ る
。
find .
−name bigram.c code.c frcode.c locate.c
−print 当 然 な が
ら 、 こ ん な コ
マ ン ド が う ま
く 動 く わ け が
な い 。 書 き 方
を 改 め て 、 パ
タ ー ン を 引 用
符 で 囲 む か 、
ワ イ ル ド カ ー
ド を エ ス ケ ー
プ す る べ き だ
。
$ find . −name '*.c' −print
$ find . −name \*.c −print
POSIX 規
格 が find に つ い
て 規 定 し て い
る 動 作 に は 、
セ キ ュ リ テ ィ
上 の 問 題 が あ
る が 、 そ れ は
そ の 動 作 に 内
在 す る 問 題 な
の で 、 修 正 す
る こ と が で き
な い 。 一 例 を
挙 げ る と 、 ア
ク シ ョ ン −exec
は 本 質 的 に 安
全 で は な い 。
だ か ら 、 −execdir
の 方 を 使 う べ
き な の だ 。 よ
り 詳 し い 情 報
に つ い て は 、
Finding Files を ご 覧 い
た だ き た い 。
環 境 変 数 LC_COLLATE
は ア ク シ ョ ン
−ok に ま っ た
く 影 響 を 及 ぼ
さ な い (訳 注 : 環
境 変 数 LC_COLLATE の
説 明 で は 「 こ
の 変 数 は ア ク
シ ョ ン −ok に
対 す る 応 答 の
解 釈 に も 影 響
を 及 ぼ す 」 と
述 べ て い る )。
バ グ 報 告 の 最
善 の 方 法 は 、
http://savannah.gnu.org/bugs/?group=findutils に
あ る 書 式 を 使
用 す る こ と で
あ る 。 そ う す
れ ば 、 問 題 解
決 の 進 行 状 態
を 追 う こ と が
で き る か ら だ
。 find(1) や findutils パ ッ
ケ ー ジ 全 般 に
つ い て の そ の
他 の ご 意 見 は
、 bug−findutils メ ー
リ ン グ リ ス ト
に お 出 し に な
れ ば よ い 。 メ
ー リ ン グ リ ス
ト に 参 加 す る
に は 、
bug−findutils−request [AT] gnu.org 宛
に E メ ー ル を 送
っ て い た だ き
た い 。
こ の 翻
訳 は findutils-4.6.0 所 収 の
find.1 の 翻 訳 で あ る
。 お 手 元 の findutils
は 、 も っ と 新
し い バ ー ジ ョ
ン 、 た と え ば
4.7.0-git に な っ て い
る か も し れ な
い 。 だ が 、 4.7.0 は
開 発 中 の 版 な
の で 、 manpage も 変
化 し 続 け て お
り 、 現 時 点 で
最 新 の 4.7.0 の マ ニ
ュ ア ル を 翻 訳
し て も 、 お 手
元 の 英 語 マ ニ
ュ ア ル と は 内
容 が 微 妙 に 違
う か も し れ な
い の だ 。 バ ー
ジ ョ ン が 同 じ 4.7.0
な の に 、 そ れ
で は 紛 ら わ し
い 。 そ こ で 、
あ え て 現 在 の
安 定 版 、 4.6.0 の マ
ニ ュ ア ル を 底
本 に し た 。
4.6.0 と
最 近 の 4.7.0-git と
の 大 き な 相 違
は 、 −D の デ バ
ッ ク オ プ シ ョ
ン に exec と search が 増
え て い る こ と
と 、 検 査 −type
や −xtype で "-type f,l"
な ど と 、 複 数
の フ ァ イ ル タ
イ プ を コ ン マ
で 区 切 っ て 指
定 で き る よ う
に な っ た こ と
く ら い で あ る
。 な お 、 バ ー
ジ ョ ン 4.4.2 ま で の
翻 訳 で は 、 述
語 の Test (−mtime,
−name, −type な ど )
を 「 判 別 式 」
と 訳 し て き た
が 、 今 回 は 素
直 に 「 検 査 」
と 訳 す こ と に
し た 。 同 じ も
の で あ る 。 「
条 件 、 条 件 式
、 検 索 式 、 検
索 条 件 、 テ ス
ト 」 な ど の 訳
語 も あ っ た と
思 う 。 こ れ ま
で の 「 判 別 式
」 と い う 訳 語
に 慣 れ た 方 に
は 、 ご 迷 惑 だ
っ た か も し れ
な い 。 お 許 し
い た だ き た い
。 (2018/03/03)
|