您的位置:首页 > 运维架构 > Linux

linux find tar -type 备份日志!!

2012-02-08 08:57 309 查看
这几天系统出现一个bug,需要截取日志供研发研究:

$ ls -lrt

……

-rw-r----- 1 jrtu jrtu 10560642 2月 8日 08:37 all.log.4

-rw-r----- 1 jrtu jrtu 10524117 2月 8日 08:38 all.log.3

drwxr-x--- 2 jrtu jrtu 512 2月 8日 08:38 JIZ-T2000-1-P

drwxr-x--- 2 jrtu jrtu 512 2月 8日 08:39 LUY-T2000-2-P

-rw-r----- 1 jrtu jrtu 10524828 2月 8日 08:39 all.log.2

-rw-r----- 1 jrtu jrtu 10561217 2月 8日 08:40 all.log.1

-rw-r----- 1 jrtu jrtu 1168256 2月 8日 08:41 jrtu.log

-rw-r----- 1 jrtu jrtu 3541928 2月 8日 08:41 all.log

在此找到比all.log.3新的文件:

$find . -depth -newer all.log.3

./jrtu.log

./all.log

./TimeCalculate/all.log

./LUY-T2000-2-P/all.log

./LUY-T2000-2-P/all.log.1

./LUY-T2000-2-P

./LUY-T2000-1-P/all.log

……

此时看到有文件夹LUY-T2000-2-P等,如果执行下面的语句:

$find . -depth -newer all.log.3 -exec tar -cvf jrtulog.tar {} \;

我们就会把文件夹内的所有文件打包,这是不对的,我们只是要找到文件夹中比all.log.3新的文件

$find . -depth -newer all.log.3 -type f -exec tar -cvf jrtulog.tar {} \; ##加上-type f,即可排除排文件夹

a ./jrtu.log 1928K

a ./all.log 10110K

a ./TimeCalculate/all.log 1589K

a ./LUY-T2000-2-P/all.log 9564K

tar: ./LUY-T2000-2-P/all.log: 文件更改大小

a ./LUY-T2000-2-P/all.log.1 10270K

a ./LUY-T2000-1-P/all.log 2150K

a ./LUY-T2000-3-P/all.log 2065K

a ./LUH-T2000-1-P/all.log 1092K

a ./KAF-T2000-1-P/all.log 7066K

a ./all.log.1 10278K

a ./JIZ-T2000-1-P/all.log 6972K

a ./JIZ-T2000-2-P/all.log 7221K

a ./JIY-T2000-1-P/all.log 6843K

a ./all.log.2 10581K

最后压缩一下:

$gzip jrtulog.tar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: