macOS 系统在处理文件时,会自动生成一些以 ._ 开头的隐藏文件

mac下压缩文件 传到服务器上 解压缩,会产生很多多余文件 大多以"._"开头的文件,如何不把这些文件压缩进去呢?

这个问题是由于 macOS 系统在处理文件时,会自动生成一些以 ._ 开头的隐藏文件(通常称为 AppleDouble 文件),用于存储扩展属性和元数据。当你在其他系统(如 Linux 服务器)上解压时,这些文件就会显现出来,造成困扰。

有几种方法可以在压缩时避免将这些多余文件打包进去,你可以根据自己的习惯选择。

💻 方法一:使用终端命令(无需安装新软件)

这是最直接的方法,通过命令行在压缩时排除这些文件。

使用 zip 命令

zip 命令的 -X 参数可以排除 macOS 的扩展属性,同时配合 -x 参数排除 __MACOSX 文件夹。

-r: 递归压缩目录

-X: 排除扩展属性

-x: 排除指定的文件模式

zip -r -X your_archive.zip your_folder_name -x .DS_Store" -x "__MACOSX/"

your_archive.zip: 你想要生成的压缩包名称。

your_folder_name: 你想要压缩的文件夹名称。

使用 tar 命令

在创建 tar 包时,可以通过设置环境变量 COPYFILE_DISABLE=1 来禁用对 macOS 特有文件的打包。

-c: 创建归档

-z: 使用 gzip 压缩

-v: 显示过程

-f: 指定归档文件名

COPYFILE_DISABLE=1 tar -czvf your_archive.tar.gz your_folder_name

🛠️ 方法二:使用第三方压缩软件(图形界面)

如果你觉得命令行不方便,很多第三方压缩软件提供了更友好的图形界面来自动处理这个问题。

Keka (免费/付费):一款非常流行的 macOS 压缩工具。在压缩时,勾选 "排除 Mac 资源文件" 选项,它就会自动过滤掉 ._ 文件和 .DS_Store 文件。

BetterZip (付费):功能强大的压缩软件。在保存压缩包时,可以选择 "为 PC 保存" 预设,或者在选项中勾选 "从压缩文件中移除特殊 Mac 文件",即可实现同样的效果。

🧹 方法三:事后清理(如果文件已在服务器上)

如果文件已经上传到服务器,你也可以在服务器上直接删除这些多余的文件。

在服务器的终端中,进入你的项目目录,然后执行以下命令:

查找并删除当前目录及子目录下所有以 "." 开头的文件
find . -name ".
*" -type f -delete

警告:此命令会直接删除文件,执行前请确保你不在重要的系统目录下,或者先用 find . -name "._*" -type f (不带 -delete)预览一下将要删除的文件。

相关推荐
元Y亨H11 小时前
MacBook Air 开发神器:IDEA 与 PyCharm 极简安装及环境配置
macos
yuanyxh1 天前
macOS 应用 - 纯对话生成
前端·macos·ai编程
AI创界者3 天前
PilotTTS 一键整合包(Win/Mac):8G 显存畅跑,实测解锁情绪与副语言的精准控制
人工智能·macos·aigc·音视频
AirDroid_cn3 天前
系统终端与iTerm2字体看起来不一样?macOS Sequoia统一渲染指南
macos
JiaWen技术圈3 天前
2026 年的 macOS 磁盘清理方法
macos
lichong9513 天前
让AI自己用电脑!Cua:后台操作鼠标键盘,Mac/Windows/Linux全支持
人工智能·macos·ai·计算机外设·agent·提示词
A尘埃3 天前
批处理命令(Linux/Mac、Windows项目启动脚本)
linux·windows·macos
他们都不看好你,偏偏你最不争气4 天前
【iOS】Runtime - Part 2 && 消息发送:缓存、查找与转发
macos·ios·objective-c·cocoa
Deepzz4 天前
macOS 上调教第三方鼠标的一些经验:从滚动顺滑到输入法自动切换
macos·swift·鼠标