在 MacOS 上创建 zip 文件时,会在 zip 存档中产生许多隐藏的 MacOS 文件。通过 Elastic Beanstalk 将应用程序上传到 Amazon 时,这些文件会出现问题。
如何从 MacOS 上创建的 zip 文件中删除这些隐藏文件?
可用于从zip文件中删除隐藏的MacOS文件的命令如下:
zip -d filename.zip __MACOSX/\*
以下是我为解决烦人的 macOS 问题而采取的一些步骤。
.bashrc
或 .zshrc
)。例如:nano ~/.bashrc
zipar() {
if [ "$#" -ne 2 ]; then
echo "Usage: zipar <name_of_file.zip> <path/to/folder>"
return 1
fi
zip -r "$1" "$2" -x "*.DS_Store" -x "__MACOSX"
}
保存文件并退出编辑器(在
nano
中,使用 Ctrl+O
保存并使用 Ctrl+X
退出)。
重新加载终端以应用更改:
现在,您可以在终端中使用
zipar
命令通过指定 .zip
文件的名称和文件夹路径来创建 .DS_Store
文件(不包括 __MACOSX
和 .zip
)。例如:
zipar my_compressed_file.zip path/to/folder
这将在指定目录中创建一个
my_compressed_file.zip
,仅此而已。
只让你知道:
.DS_Store(桌面服务存储)是一个隐藏文件,包含其封闭文件夹的属性,例如图标大小显示。 __MACOSX 文件夹是在 zip 过程中创建的,包含有关压缩文件的元数据。