Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

tmpreaperの使い方

228 views
Skip to first unread message

朧月

unread,
Oct 26, 2010, 4:25:48 AM10/26/10
to
お世話になってます、朧月です。

フォルダ内にたまってる古いフォルダやファイルを削除したくて、四苦八苦して
おります。tmpreaperを使えば良さそうなところまではわかったのですが、いま
いち使い方が良くわかりません。

http://rdt17.blogspot.com/2009/12/tmptmpreaper.html

上記が見つけた中で一番詳しいページなのですが、もうちょっと資料とかってご
存じないでしょうか。

こちらとしては、あるフォルダの中はは一日前のファイルとフォルダを削除、あ
るフォルダの中は一週間前のファイルとフォルダを削除、といった細かい制御を
したいなと思っています。


--
朧月
mailto:ob...@ebetsu.arrow.jp

hiroshi morimoto

unread,
Oct 26, 2010, 8:10:04 AM10/26/10
to
森本です。
tmpreaperは使ったことはないですが、
/usr/share/doc/ 以下にそれに関するファイルがあります。

また find コマンドも便利かな?

朧月

unread,
Oct 26, 2010, 7:39:07 PM10/26/10
to
お世話になってます、朧月です。

hiroshi morimoto wrote (2010/10/26 21:10):
> 森本です。
> tmpreaperは使ったことはないですが、
> /usr/share/doc/ 以下にそれに関するファイルがあります。

了解です。とりあえず、特定のフォルダの1日前のデータを消すことには成功し
ました。

> また find コマンドも便利かな?

findって、検索用のコマンドですよね?


--
朧月
mailto:ob...@ebetsu.arrow.jp

hiroshi morimoto

unread,
Oct 26, 2010, 7:49:06 PM10/26/10
to
森本です。
find は検索ができます、また
検索したファイルを削除もできます。
詳しくは、man find で調べてみてはいかかでしょうか?

Tanaka Saburo

unread,
Oct 26, 2010, 7:57:29 PM10/26/10
to
saburoです。

> findって、検索用のコマンドですよね?

毎度毎度思うんですが何でman findぐらいしてみないんですか?

朧月

unread,
Oct 27, 2010, 4:34:01 AM10/27/10
to
お世話になってます、朧月です

http://www.k4.dion.ne.jp/~mms/unix/linux_com/find.html

上のページに私がやりたいことがモロに出ていますね。

findでファイル操作っていうのは、意外で想像できませんでした。

--
朧月
mailto:ob...@ebetsu.arrow.jp

KISE Hiroshi

unread,
Oct 27, 2010, 11:00:53 AM10/27/10
to
From: 朧月 <ob...@ebetsu.arrow.jp>
Subject: [debian-users:54599] Re: tmpreaperの使い方
Date: Wed, 27 Oct 2010 17:34:01 +0900
> findでファイル操作っていうのは、意外で想像できませんでした。

findは検索だけで、あとの処理は他のコマンドにおまかせする、なんて
こともできます。findはxargsとペアで使われることが多いので、
覚えておくとよいかも。

$ find . -name '*.avi' | xargs file

UNIX系OSのコマンドライン操作では、組み合わせて使うということが
重要です。
--
喜瀬“冬猫”浩

SATOH Fumiyasu

unread,
Oct 27, 2010, 11:21:34 AM10/27/10
to
さとうふみやす @ OSSTech です。

At Thu, 28 Oct 2010 00:00:53 +0900,


KISE Hiroshi wrote:
> > findでファイル操作っていうのは、意外で想像できませんでした。
>
> findは検索だけで、あとの処理は他のコマンドにおまかせする、なんて
> こともできます。findはxargsとペアで使われることが多いので、
> 覚えておくとよいかも。
>
> $ find . -name '*.avi' | xargs file

安全のため、find には -print0 を、xargs には -0r
(--null --no-run-if-empty) オプションを利用することを推奨します。

$ find . -name '*.avi' -print0 |xargs -0r file

安全でない例1:

$ find . -name '存在しないファイル名パターン' |xargs file
Usage: file [-bchikLNnprsvz0] [--apple] [--mime-encoding] [--mime-type]
[-e testname] [-F separator] [-f namefile] [-m magicfiles] file ...
file -C [-m magicfiles]
file [--help]

この場合、以下なら file が引数なしで実行されない:

$ find . -name '存在しないファイル名パターン' |xargs -r file

安全でない例2:

準備と確認:
$ mkdir find-xargs-demo-2
$ cd find-xargs-demo-2
$ touch foo 'bar baz'
$ mkdir -p 'trap /etc/passwd'
$ find . -ls
5915152 4 drwxrwsr-x 3 fumiyas fumiyas 4096 10月 28 00:16 .
5915160 0 -rw-rw-r-- 1 fumiyas fumiyas 0 10月 28 00:15 ./bar\ baz
5915155 4 drwxrwsr-x 3 fumiyas fumiyas 4096 10月 28 00:16 ./trap\
5915156 4 drwxrwsr-x 3 fumiyas fumiyas 4096 10月 28 00:16 ./trap\ /etc
5915158 4 drwxrwsr-x 2 fumiyas fumiyas 4096 10月 28 00:16 ./trap\ /etc/passwd
5915159 0 -rw-rw-r-- 1 fumiyas fumiyas 0 10月 28 00:15 ./foo

これは期待通りに動かない:
$ find . -name "*" |xargs file
.: setgid directory
./bar: ERROR: cannot open `./bar' (No such file or directory)
baz: ERROR: cannot open `baz' (No such file or directory)
./trap: ERROR: cannot open `./trap' (No such file or directory)
./trap: ERROR: cannot open `./trap' (No such file or directory)
/etc: directory
./trap: ERROR: cannot open `./trap' (No such file or directory)
/etc/passwd: ASCII text
./foo: empty

これなら大丈夫:
$ find . -name "*" -print0 |xargs -0 file
.: setgid directory
./bar baz: empty
./trap : setgid directory
./trap /etc: setgid directory
./trap /etc/passwd: setgid directory
./foo: empty

--
-- Name: SATOH Fumiyasu (fumiyas @ osstech co jp)
-- Business Home: http://www.OSSTech.co.jp/
-- Personal Home: http://www.SFO.jp/blog/

0 new messages