You can remove the unwanted __MACOSX__ folder by using the Terminal command
ditto to extract the archive, or by running a simple shell loop after extraction to delete the directory. The Finder app preserves macOS resource forks, which create this metadata folder, but standard Unix tools ignore them, resulting in a clean file structure containing only your PDFs without any clutter.
Understanding the __MACOSX__ Folder
When you double-click a zip file in macOS Finder, the system uses its native archiving utility. This utility is designed to preserve macOS-specific metadata, such as resource forks and extended attributes, to ensure files behave correctly if re-zipped on a Mac. The __MACOSX__ folder contains these hidden metadata files, typically named ._* for each original file. While harmless, it is often unnecessary noise when sharing documents with Windows users or simply trying to access a PDF quickly.
The presence of this folder is not a bug but a feature of how macOS handles cross-platform compatibility. However, for most users extracting PDFs, this extra layer adds confusion. You might see the folder appear in your search results or accidentally include it when moving files, leading to empty or corrupted PDF previews because the actual data resides outside that metadata container.
Method 1: Using the Terminal Ditto Command
The most robust way to avoid creating the __MACOSX__ folder entirely is to use the
ditto command in the Terminal. This utility extracts archives while allowing you to control how metadata is handled. By default,
ditto does not create the __MACOSX__ directory unless specifically instructed to preserve all macOS resources, making it ideal for clean extractions.
Open the Terminal application from your Applications > Utilities folder. Navigate to the directory where your zip file is located using the
cd command. For example, if your file is on the Desktop, type:
cd ~/Desktop
Once in the correct directory, run the extraction command. Replace
archive.zip with the actual name of your file. The
-x flag tells ditto to extract, and the
-k flag ensures that symbolic links are preserved if present, though this is less critical for PDFs.
ditto -x -k --sequesterRsrc archive.zip ./
This command extracts the contents directly into the current folder. Because
ditto treats the archive as a generic package rather than a macOS-native bundle, it skips the creation of the __MACOSX__ metadata folder. Your PDF files will appear immediately in the folder, ready for use. This method is particularly useful if you need to automate the process via scripts or handle multiple files efficiently.
For more details on compressing directories from the command line, you may find
Compress each directory to its own Zip file from command line helpful for future archiving tasks.
Method 2: Deleting the Folder After Extraction
If you have already extracted the zip file using Finder and now face the __MACOSX__ folder, you can remove it manually or via a quick Terminal command. Since the folder is just a standard directory, deleting it does not affect the actual PDF files stored alongside it.
To do this manually, simply locate the __MACOSX__ folder in your Finder window, right-click it, and select "Move to Trash." Empty the trash to permanently remove it. This is safe because the __MACOSX__ folder only contains metadata like icon positions and custom labels, not the document content itself.
Alternatively, you can use a single Terminal command to delete it recursively if it appears in multiple nested folders. Navigate to the parent directory containing the extracted files and run:
rm -rf __MACOSX
This command forces the removal of the directory and all its contents. Use caution with
rm -rf commands, ensuring you are in the correct directory before executing. This approach is faster for bulk cleaning if you have extracted several archives at once.
Preventing Future Occurrences
To prevent this issue from happening again, consider changing your default extraction behavior. While macOS does not provide a global setting to disable __MACOSX__ creation for all zip files, you can adopt habits that bypass the Finder's native extractor. Using third-party applications like Keka or The Unarchiver often provides options to strip metadata during extraction.
Additionally, if you frequently share files between Mac and Windows, consider using tar.gz formats instead of zip. These formats do not support macOS resource forks in the same way, meaning they naturally exclude the __MACOSX__ folder upon extraction. This is a best practice for collaborative environments where platform neutrality is required.
For insights on how macOS frameworks handle symbolic links during compression, see
Does Zip MacOS Framework Preserve Symbolic Links?, which explains deeper structural behaviors of macOS archives.
Frequently Asked Questions
Is the __MACOSX__ folder dangerous or a virus?
No, the __MACOSX__ folder is completely safe and is generated automatically by macOS. It contains only metadata files used to store resource forks and extended attributes specific to Apple operating systems.
Will deleting the folder corrupt my PDF files?
Deleting the __MACOSX__ folder will not corrupt your PDF files. The actual document data is stored in separate files outside this metadata directory, so removing the folder leaves your readable content intact.
How do I open Terminal on macOS?
You can open Terminal by pressing Command + Space to activate Spotlight Search, typing "Terminal," and hitting Enter. Alternatively, navigate to Applications > Utilities in Finder and double-click the Terminal app.
Can I change Finder settings to stop creating this folder?
There is no built-in preference in macOS System Settings to globally disable __MACOSX__ folder creation for zip files. You must either use command-line tools like
ditto or third-party extraction software to achieve this behavior consistently.
Why do my PDFs look different after extraction?
If your PDFs appear different, it might be due to missing custom icons or labels that were stored in the __MACOSX__ folder. The actual content of the PDF remains unchanged, but visual cues like custom desktop icons may be lost if you discard the metadata folder.