検索
Linuxにおけるファイル検索を述べる.
- find
- mlocate
find
代表的なfindコマンド
書式: find [-H] [-L] [-P] [-D debugopts] [-Olevel] [starting-point...] [expression]
オプション | 意味 |
---|---|
-H | コマンドライン上で指定された引き数を処理するとき以外、シンボリックリンクをたどらない。 |
-L | シンボリックリンクをたどる。 |
-P | シンボリックリンクをまったくたどらない。これがデフォルトの動作である。 |
-D [OPTION] | デバッグモード |
-O [0-3] | 最適化レベル |
式
- グローバルオプション ... 指定位置関係せず,コマンドに影響する.
- ファイルの検査 ... ファイルの中身やメタデータを問う.真偽を返す.
- アクション ... 真偽次第でやることを示す.
- 位置オプション ... 位置によって挙動が変わる.真を返す 位置オプションのうしろで変化される.例えば文字列整形のオプションの場合は,指定位置より後ろは整形された'てい'で評価される.
- 演算子 ANDやORなど
グローバルオプション
一部抜粋する
引数 | 説明 |
---|---|
-d ,-depth | ディレクトリそのものより中身を先に処理する |
-help ,--help | help. |
-[max|min]depth | 探索する深さを指定. |
-mount ,-xdev | ほかのファイルシステムのディレクトリを探索しない |
検査
引数n
は,+n
でnより大きい,-n
でnより小さい,n
でnである,を示す.
[a|c|m]
について
- a
はaccess(アクセスについての最終日時),
- c
はchange(要文献)(ステータス変更についての最終日時)を示す.
- m
はmodify(最終内容更新日時)
を示す.(e.g. -amin
, -cmin
, -mmin
)
一部抜粋する
引数 | 説明 |
---|---|
-[a|c|m]amin n | 最終日時がn 分前である |
-[a|c|]newer f | ファイルf よりも最終日時が新しい.内容更新日時については,単に-newer |
-[a|c|m]time n | 現在時刻を基点として最終日時がn 日前である(日付的な意味合いで計算する場合は-daystart をこの引数より前に設定する)` |
-empty | ファイルが空かつ,通常ファイルまたはディレクトリである |
-execute | access SYSCALLを利用して,実行属性に一致する(実行可能なファイル,検索可能なディレクトリ) |
-readable | 読めるファイル |
-perm [mode] | ファイルの許可属性に関する条件(詳細はManualを) |
-fstype type | そのファイルが設置されているファイルシステムがtype である |
-gid n | ファイルのGIDがn である |
-group [name|id] | ファイルの属するグループがname 名か,gid であるか |
-name [pattern] | ファイルのbasenameがパターンに一致するか.パターンなので,' で囲む, |
-regex [pattern] | ファイル名が正規表現一致か.(-regextype で正規表現解釈を変更できる) |
-sanefile name | ファイルがname と同じinode番号を示す.(-L が有効な場合,シンボリックリンクも真を示す) |
-type [b|c|d|p|f|l|s|D] | ファイルのタイプを示す.D はSolarisの「ドア」タイプである. |
-size n[b|c|w|k|M|G] | ファイルサイズ.c~G のいずれかを指定しない場合は,b (ブロックサイズ)が適用される.バイトサイズはc である.w はワードサイズ,1ワード2バイトとする.なお,k|M|G は,それぞれキビ・メビ・ギビである.キロやギガではない. |
-no[user|group] | ファイルのUID/GIDがシステムに存在しない場合 |
アクション
一部抜粋する
-delete
削除-exec [command] ;
... コマンドを実行.対象となるファイルは{}
で示される.ただし,exec
の呼出回数の点から| xargs
を使うと良い場面が多い.-ok [command] ;
... execオプションを実行する前に同意を示す.-fls [file]
や-fprint file
... 出力をfile
に書き出す.
-ls
...ls -dils
の形式で出力する.-printf [format]
... printf書式
演算子
()
,!
,-not
式1 式2
,式1 -a 式2
,式1 -and 式2
... and式1 -o 式2
,式1 -or 式2
... or式1 , 式2
... list
mlocate
sudo apt install mlocate
updatedb
... db更新locate
... 検索
最終更新日: 2021年6月27日