1.02.2基礎
old-cacheが空である場合だけ削除する。
中身があれば削除せずエラーにしたい。
目的に合うコマンドはどれか。
× 不正解
rmdirは空のディレクトリだけを削除するため、中身を誤って再帰削除したくない場面に適する。
詳細解説
誤り
rm -f old-cache-fは通常ファイルの確認抑止などに使われ、ディレクトリを空の場合だけ削除する指定ではない。
誤り。rm -fは通常ファイルの削除を強制する方向で、空ディレクトリだけという安全条件を実現しない。
誤り
rm -r old-cache中身があっても再帰的に削除するため、安全条件を満たさない。
誤り。rm -rは内部のファイルも含めて削除するため、中身があれば残すという要件に反する。
正しい
rmdir old-cache空ディレクトリだけを削除し、中身がある場合は失敗する。
正しい。rmdirはディレクトリが空でなければ失敗し、内部項目を再帰削除しない。
誤り
mkdir -p old-cacheディレクトリを作成する操作であり、削除しない。
誤り。mkdir -pはディレクトリを用意する操作であり、既存のold-cacheを削除しない。
実際に確かめる
一時的な検証環境で実行できる例です。
tmp=$(mktemp -d); mkdir "$tmp/empty"; rmdir "$tmp/empty"; test ! -e "$tmp/empty" && echo removed; rmdir "$tmp"期待される結果
removed理解のポイント
- rmdirは空だけ
- rm -rは再帰削除
- 安全条件をコマンドで表す
確認時の注意
- 確認環境: POSIX shell / 一時ディレクトリ
基礎のおさらい
空であることの確認
rmdirの失敗条件を利用すれば、中身を消さずに空ディレクトリだけを片付けられる。
再帰削除の危険
rm -rは対象パス以下を広く消すため、必要性と対象を確認して使う。
問題IDKL-101-396
確認環境POSIX shell / 一時ディレクトリ
最終技術確認2026-08-13
誤り・権利侵害を報告