![如何消除 Zip CLI 中的“@eaDir”?](https://linux22.com/image/151442/%E5%A6%82%E4%BD%95%E6%B6%88%E9%99%A4%20Zip%20CLI%20%E4%B8%AD%E7%9A%84%E2%80%9C%40eaDir%E2%80%9D%EF%BC%9F.png)
我已经尝试了以下许多派生:
zip -r test.zip /volume1/docker/test/ -x "*.DS_Store" -x "*.pyc" -x "@eaDir"
DS_Store 和 pic 文件被省略,但目录 @/eaDir 和所有文件仍然保留。
updating: volume1/docker/test/@eaDir/version.py@SynoResource
updating: volume1/docker/test/@eaDir/version.py@SynoEAStream
updating: volume1/docker/test/@eaDir/start.py@SynoResource
建议?
答案1
模式是带有可选通配符的路径,并且匹配存档中存储的路径。
所以你需要使用:
zip -r test.zip /volume1/docker/test/ -x '*/@eaDir/*' -x '*.DS_Store' -x '*.pyc'
单引号将*
通配符传递给 zip,后者将路径与您为存档提供的路径相匹配。 (你的双引号也可以,但我更喜欢在这里使用单引号,以避免对变量名或命令替换等的任何误解)。