No.20139 投稿時間:2006年01月26日(Thu) 07:59 投稿者名:aki URL:
おはようございます。
RedHatLinux3を使用してます
/qwe1/qwe2/qwe3/aaa.log
/qwe2/qwe3/qwe4/bbb.log
/qwe2/qwe3/qwe4/eee.log
/qwe3/qwe4/qwe6/ccc.log
の様に複数のファイルがあったとします。
これを10日間立ったら削除すると言ったシェルスクリプトを配列を
使用して作成したいのですがどなたか配列をうまく使用した方法で
削除できる方法をご存知な方はいらっしゃらないでしょうか?
自分が作成したシェルだと下の様になってしまい、複数同じ内容
を書かなくてはいけなくなってしまいます。
どなたかご存知な方がいらっしゃったらご教授の程を何卒宜しくお
願い致します。
////////////////////////////////////////////////////////////////
if [ -f /qwe1/qwe2/qwe3/aaa.log/aaa.log ]; then
//qwe1/qwe2/qwe3/aaa.log/aaa.log -mtime 30 -exec rm {} \;
chck=$?
if [ ${chck} = 0 ] ; then
echo "000"
else
echo "111"
fi
else
echo "222"
fi
////////////////////////////////////////////////////////////////
No.20141 投稿時間:2006年01月26日(Thu) 10:30 投稿者名:Reboot URL:
> おはようございます。
> RedHatLinux3を使用してます
>
> /qwe1/qwe2/qwe3/aaa.log
> /qwe2/qwe3/qwe4/bbb.log
> /qwe2/qwe3/qwe4/eee.log
> /qwe3/qwe4/qwe6/ccc.log
>
> の様に複数のファイルがあったとします。
>
> これを10日間立ったら削除すると言ったシェルスクリプトを配列を
> 使用して作成したいのですがどなたか配列をうまく使用した方法で
> 削除できる方法をご存知な方はいらっしゃらないでしょうか?
>
> 自分が作成したシェルだと下の様になってしまい、複数同じ内容
> を書かなくてはいけなくなってしまいます。
> どなたかご存知な方がいらっしゃったらご教授の程を何卒宜しくお
> 願い致します。
>
> ////////////////////////////////////////////////////////////////
> if [ -f /qwe1/qwe2/qwe3/aaa.log/aaa.log ]; then
> //qwe1/qwe2/qwe3/aaa.log/aaa.log -mtime 30 -exec rm {} \;
> chck=$?
> if [ ${chck} = 0 ] ; then
> echo "000"
> else
> echo "111"
> fi
> else
> echo "222"
> fi
> ////////////////////////////////////////////////////////////////
apache のログなど、logrotate で処理していますが。
http://www.asahi-net.or.jp/~aa4t-nngk/logrotate.html
http://www.tomo.ac/goodstream/server/logrotate/freebsd49r.html
No.20142 投稿時間:2006年01月26日(Thu) 12:27 投稿者名:松元 URL:
> ////////////////////////////////////////////////////////////////
> if [ -f /qwe1/qwe2/qwe3/aaa.log/aaa.log ]; then
> //qwe1/qwe2/qwe3/aaa.log/aaa.log -mtime 30 -exec rm {} \;
> chck=$?
> if [ ${chck} = 0 ] ; then
> echo "000"
> else
> echo "111"
> fi
> else
> echo "222"
> fi
> ////////////////////////////////////////////////////////////////
これってシェルスクリプトなのですか?
#!/bin/sh も無ければ、 /////…// なんて実行できるわけが無い。
echo 111 や 222 が何だかわからないし。aaa.log -mtime 30 -exec rm {} も。