1.02.2基礎
/srv/data以下から、所有者がaliceの通常ファイルだけを検索する。
GNU findで適切なコマンドはどれか。
× 不正解
find -user NAMEは所有ユーザー、-group NAMEは所有グループを条件にする。
詳細解説
誤り
find /srv/data -type f -group alice所有グループ名を条件にし、所有ユーザーを調べない。
誤り。-groupはグループ所有権を比較し、所有ユーザーaliceという要件を判定しない。
誤り
find /srv/data -type f -name aliceファイルのベース名がaliceかを調べる。
誤り。-nameはファイル名文字列だけを照合し、inodeの所有者情報を参照しない。
正しい
find /srv/data -type f -user aliceファイルの所有ユーザー名がaliceかを条件にする。
正しい。-userは所有ユーザーIDに対応する名前を条件にし、alice所有の対象を選ぶ。
誤り
find /srv/data -type f -perm alice-permはモードを条件にし、利用者名を所有者条件として受け取らない。
誤り。-permは数値またはシンボリックなモードを受け取り、利用者名を所有者条件には使わない。
実際に確かめる
一時的な検証環境で実行できる例です。
tmp=$(mktemp -d); touch "$tmp/mine"; find "$tmp" -type f -user "$(id -un)" -printf '%f\n'; rm -rf "$tmp"期待される結果
mine理解のポイント
- -userは所有者
- -groupは所有グループ
- -nameはファイル名
確認時の注意
- 確認環境: GNU findutils 4.x / 現在の利用者が所有する一時ファイル
基礎のおさらい
名前とID
ファイルには所有ユーザーIDが保存され、表示や-nameではなく-userテストで検索する。
数値ID
名前解決できない所有者を調べる場合は-uidで数値IDを指定できる。
問題IDKL-101-404
確認環境GNU findutils 4.x / 現在の利用者が所有する一時ファイル
最終技術確認2026-08-13
誤り・権利侵害を報告