在 Linux 中使用 7-zip 时,我需要
- 将 zip 文件保存到绝对路径:
/var/www/vhosts/mysite.com/httpdocs/app/webroot/myfiles.7z
- 备份其中的所有文件和子文件夹:
/var/www/vhosts/mysite.com/httpdocs/
- 完全排除这些文件夹、其子文件夹及其内部的所有文件:
/var/www/vhosts/mysite.com/httpdocs/app/tmp/sessions/
/var/www/vhosts/mysite.com/httpdocs/app/posts/
- 排除这些文件夹中的所有文件,但保留文件夹名称:
/var/www/vhosts/mysite.com/httpdocs/app/news/
/var/www/vhosts/mysite.com/httpdocs/app/handy/
我的意思是,zip 文件将包含“news”和“handy”文件夹,但该文件夹将为空
我尝试过这个但没有帮助:
# 7za a
/var/www/vhosts/mysite.com/httpdocs/app/webroot/myfiles.7z
/var/www/vhosts/mysite.com/httpdocs/
-xr!app\tmp\sessions\
-xr!app\posts\
-xr!app\news\*.*
-xr!app\handy\*.*
答案1
在排除表达式之前添加“ *
”(并使用正斜杠,这是 Linux,对吗?)有助于:
$ 7za 到 /var/www/vhosts/mysite.com/httpdocs/app/webroot/myfiles.7z \ /var/www/vhosts/mysite.com/httpdocs/ \ -xr\!* 应用程序/tmp/会话 \ -xr\!*应用程序/帖子\ -xr\!*应用/新闻/* \ -xr\!*应用程序/便捷/*