状況
古いログを消す前に、対象のファイルを一覧で確かめたい。
更新から 7 日より前のログを表示するには、空欄に何を入れる?
$ find /var/log/app -name '*.log' -mtime ____ -print正答
- -7
- +7
- 7
- -8
解説
find の -mtime は更新からの日数で、+n は n 日より前、-n は n 日より新しい、符号なしの n はちょうど n 日前(24 時間単位で切り捨て)を表す。古いログを選ぶなら +7。-7 や -8 にすると直近のログが選ばれ、そのまま削除に回すと調査に要る新しいログを消してしまう。符号なしの 7 は 7 日前の 1 日分だけになる。削除の前に -print で対象を確かめる手順は、この取り違えを防ぐためにある。
参考: www.gnu.org
この問題を含む Linux・シェル のテストを制限時間つきで解く
Linux・シェルクイズへ