试图找到然后TAR.GZ找到文件

时间:2014-10-06 12:19:05

标签: linux

我发现我认为这个论坛中的解决方案是能够找到我的特定LOG文件,然后对这些文件执行TAR.GZ备份。但是,执行命令时我收到错误。管道之前的命令运行良好,找到我需要的文件,但在尝试创建备份文件时,我会爆炸。任何建议/方向将不胜感激。感谢。

这是命令:

find /var/log/provenir -type f -name "*2014-09-08.log" | tar -cvzf backupProvLogFiles_20140908.tar.gz

这是我得到的错误:

find /var/log/provenir -type f -name "*2014-09-08.log" | tar -czvf backupProvLogFiles_20140908.tar.gz --null -T -
tar: Removing leading `/' from member names
tar: /var/log/provenir/BureauDE32014-09-08.log\n/var/log/provenir/DE_HTTP2014-09
-08.log\n/var/log/provenir/BureauDE22014-09-08.log\n/var/log/provenir/DE_HTTP220
14-09-08.log\n: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors

3 个答案:

答案 0 :(得分:1)

您也可以使用gzip来执行此操作

find /var/log/provenir -type f -name "*2014-09-08.log" | gzip > tar -cvzf backupProvLogFiles_20140908.tar EDIT

<是/> 的 修改

更好的解决方案是使用命令替换

tar -cvzf backupProvLogFiles_20140908.tar $(find /var/log/provenir -type f -name "*2014-09-08.log")

答案 1 :(得分:0)

我认为你的意思是这样的:

find . -name "*XYZ*" -type f -print | tar -cvz -T - -f SomeFile.tgz

答案 2 :(得分:0)

我终于找到了一个解决方案,以防万一其他人可能正在寻找另一个选项来回答这个问题:

find /var/log/provenir -type f -name "*2014-09-08.log" -print0 | tar -czvf /var/log/provenir/barchive/backupProvLogFile_20140908.tar.gz --null -T -

这很有效。答案来自这篇文章:Find files and tar them (with spaces)

再次感谢我收到的帮助。

问候。