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)预览一下将要删除的文件。

相关推荐
感谢地心引力15 小时前
在codex里面使用Deepseek-v4,支持mac和windows双系统
windows·gpt·macos·ai·codex·deepseek
搬砖的小码农_Sky15 小时前
AI Agent:macOS Sequoia 部署 OpenClaw 完整教程
人工智能·macos·ai·人机交互
天上路人1 天前
AI 降噪不是“凭空复原语音”,而是在“已有语音信息”的基础上进行增强。
ide·人工智能·macos·语音识别·xcode
один but you1 天前
【无标题】
macos·objective-c·cocoa
AI行业学习1 天前
CC-Switch 下载、安装与使用全指南Windows+macOS+Linux【2026.5.28】
linux·windows·macos
Digitally1 天前
5 种将 Galaxy 数据拷贝到 Mac 的方法
macos
ruanyongjing1 天前
元数据驱动开发 - 面向对象编程思想的补充 (十二)
nginx·macos·docker
搬砖的小码农_Sky2 天前
macOS Sequoia 命令行(终端)完全使用指南
macos
ting94520002 天前
ModelHub 深度技术解析:macOS 原生菜单栏 LLM 模型管理工具,补齐 Ollama/MLX/LM Studio 生态短板
人工智能·macos·架构·策略模式
我有满天星辰2 天前
【那些年踩过的坑-前端篇- Mac版本】Mac 从零搭建 Node 环境:nvm + Node + Vue 实战(避坑终极版)
前端·vue.js·macos