11
59分以上経過したファイルは削除したいと思います。私は今までこれを持っています:X分より古いファイルを削除する
find /tmp -daystart -maxdepth 1 -mmin +59 -type f -name "*.*" -exec rm -f {} \;
これはうまくいかず、すべてのファイルを削除したようです。私はこれを数回試しましたが、問題はdaystart
とすると思います。
私はマニュアルページを読んでおり、24時間前よりもむしろ1日の始まりに時間を置いているようです。この場合、59分以上経過したファイルを正確に削除するにはどうすればよいですか? daystart
のアカウントを追加し、さらに数分を追加する必要がありますか?
例:
[email protected]:/tmp$ ls -la
total 8
drwxrwxrwt 2 root root 4096 Jul 20 14:39 ./
drwxr-xr-x 23 root root 4096 Jun 25 18:34 ../
-rw-rw-r-- 1 ubuntu ubuntu 0 Jul 20 12:35 a.txt
どちらも次のコマンドは、ファイルを返す:
[email protected]:/tmp$ find /tmp -daystart -maxdepth 1 -mmin +59 -type f -name "*.*"
/tmp/a.txt
そして:
[email protected]:/tmp$ find /tmp -daystart -maxdepth 1 -mmin +359 -type f -name "*.*"
/tmp/a.txt
をしかし、ファイルは659分(10.9よりも古いではありません時間)!しかし、759(12.65時間)にはもうファイルを返さないのですか?
ところで、私は、 '-exec rm -f {} \;'の代わりに '-delete'パラメータが好きです。 – lanes