我想制作一个目录的 zip 文件,除了其中的特定文件夹。这是我的命令:
zip -r -x 'public/images/' tw.zip /var/www/html/m4/
Run Code Online (Sandbox Code Playgroud)
我想制作一个 zip,/var/www/html/m4/
除了public/images/
其中存在的文件夹。但是我的命令会抛出此错误消息:
zip error: Invalid command arguments (nothing to select from)
Run Code Online (Sandbox Code Playgroud)
出了什么问题,我该如何解决?
zip 手册页说:
zip ... [zipfile [file ...]] [-xi list]
Run Code Online (Sandbox Code Playgroud)
因此,您要压缩的 zip 文件名和结构路径应位于排除列表之前。
这部分命令将无法正确应用:
-x 'public/images/'
Run Code Online (Sandbox Code Playgroud)
因为它没有以 zip 识别的方式指定文件。
这将起作用:
zip -r my.zip /var/www/html/m4/ -x /var/www/html/m4/public/images/\*
Run Code Online (Sandbox Code Playgroud)
-r
是递归的。-x
用于排除(文件),\
before*
用于避免 shell 扩展文件名;我们把它留给zip
.