当前位置: 技术问答>linux和unix
我想在unix下实现一个定期自动压缩文件的shell,请高手指点一下
来源: 互联网 发布时间:2016-03-07
本文导语: 我有个文件下面,他的文件命名是有规则的 如:abc2008-03-01-1.out abc2008-03-01-2.out …… …… abc2008-03-02-1.out abc2008-03-02-2.out …… …… 我先在想定期压缩当前日期前十天以前的...
我有个文件下面,他的文件命名是有规则的
如:abc2008-03-01-1.out
abc2008-03-01-2.out
……
……
abc2008-03-02-1.out
abc2008-03-02-2.out
……
……
我先在想定期压缩当前日期前十天以前的所有.out 结尾的文件
改如何实现?
谢谢了。
如:abc2008-03-01-1.out
abc2008-03-01-2.out
……
……
abc2008-03-02-1.out
abc2008-03-02-2.out
……
……
我先在想定期压缩当前日期前十天以前的所有.out 结尾的文件
改如何实现?
谢谢了。
|
#/bin/sh
ls *.out|while read name
do
echo $name
namedate=`echo $name|cut -c cut -c 4-7,9-10,12-13`
workdate=`date "-d -10 day" +%Y%m%d`
if [ $namedate -a "`expr $workdate >= $namedate ` -eq 1" ]
then
tar -rf back$namedate.tar $name
fi
done
ls *.out|while read name
do
echo $name
namedate=`echo $name|cut -c cut -c 4-7,9-10,12-13`
workdate=`date "-d -10 day" +%Y%m%d`
if [ $namedate -a "`expr $workdate >= $namedate ` -eq 1" ]
then
tar -rf back$namedate.tar $name
fi
done
|
namedate=`echo $name ¦cut -c cut -c 4-7,9-10,12-13`
改成
namedate=`echo $name ¦ cut -c 4-7,9-10,12-13`
改成
namedate=`echo $name ¦ cut -c 4-7,9-10,12-13`
|
我有个文件下面,他的文件命名是有规则的
如:abc2008-03-01-1.out
abc2008-03-01-2.out
……
……
abc2008-03-02-1.out
abc2008-03-02-2.out
……
……
我先在想定期压缩当前日期前十天以前的所有.out 结尾的文件
改如何实现?
谢谢了。
--------------
find DIR -mtime +10 -name "abs*out" |xargs compress
如:abc2008-03-01-1.out
abc2008-03-01-2.out
……
……
abc2008-03-02-1.out
abc2008-03-02-2.out
……
……
我先在想定期压缩当前日期前十天以前的所有.out 结尾的文件
改如何实现?
谢谢了。
--------------
find DIR -mtime +10 -name "abs*out" |xargs compress
|
命令写好就放到crond不就ok了