好的,这里的问题很简单。我正在研究一个简单的备份代码。它工作正常,除非文件中有空格。这就是我查找文件并将它们添加到 tar 存档的方式:
find . -type f | xargs tar -czvf backup.tar.gz
问题是文件名中有空格,因为 tar 认为它是一个文件夹。基本上有没有一种方法可以在 find 的结果周围添加引号?或者用不同的方法来解决这个问题?
最佳答案
使用这个:
find . -type f -print0 | tar -czvf backup.tar.gz --null -T -
它会:
tar -c
和 xargs
那样反复覆盖您的 backup.tar.gz,当您有大量文件时会这样做另见:
https://stackoverflow.com/questions/5891866/