Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux Zip文件夹排除一些文件夹_Linux_Ubuntu - Fatal编程技术网

Linux Zip文件夹排除一些文件夹

Linux Zip文件夹排除一些文件夹,linux,ubuntu,Linux,Ubuntu,我正在尝试备份我的www文件夹,但www中的隐藏文件夹(如.config)已添加到备份中。我想排除文件夹“备份”和所有以点开头的文件夹(和文件) 问题是它会将所有隐藏的文件夹(如.config)复制到zip文件中 当前代码: zip -r /var/www/backups/site/$(date +\%Y-\%m-\%d-\%H-\%M).zip /var/www -x "*backups*" "*.*" "*/.*" 这应该对你有用 zip -r --exclude=*backups* --

我正在尝试备份我的www文件夹,但www中的隐藏文件夹(如.config)已添加到备份中。我想排除文件夹“备份”和所有以点开头的文件夹(和文件)

问题是它会将所有隐藏的文件夹(如.config)复制到zip文件中

当前代码:

zip -r /var/www/backups/site/$(date +\%Y-\%m-\%d-\%H-\%M).zip /var/www -x "*backups*" "*.*" "*/.*"

这应该对你有用

zip -r --exclude=*backups* --exclude=*/.* /var/www/backups/site/$(date +\%Y-\%m-\%d-\%H-\%M).zip /var/www

使用带有排除标志的LinuxFind命令,然后将其导入zip

    find . | grep -v "\(backups\|/\.\)" | xargs zip archive.zip
下面的命令将排除当前目录下包含关键字“backups”或路径中带有“/”的文件的所有路径,然后将文件导入zip

    find . | grep -v "\(backups\|/\.\)" | xargs zip archive.zip

你没有说你为什么对你现在的代码不满意。另外,
“*.*”
不是以点开头的文件或文件夹。交叉发布为AskUbuntu:@4ae1e1显然忘记了这一点,现在添加了它。我无法复制(但我不在Ubuntu上)。您能否创建一个更简单的示例目录结构,并准确地向我们展示zip归档中的内容?