歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux find tar -type 備份日志

Linux find tar -type 備份日志

日期:2017/2/28 15:57:19   编辑:Linux教程
這幾天系統出現一個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

Copyright © Linux教程網 All Rights Reserved