<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>AppleScript on 小景</title>
        <link>https://jingyuan-zheng.github.io/zh/tags/applescript/</link>
        <description>Recent content in AppleScript on 小景</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-Hans</language>
        <copyright>Jingyuan Zheng</copyright>
        <lastBuildDate>Sat, 08 Aug 2026 14:00:00 +0200</lastBuildDate><atom:link href="https://jingyuan-zheng.github.io/zh/tags/applescript/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>macOS 一键弹出所有 DMG 和 ISO：用快捷指令清理磁盘映像</title>
            <link>https://jingyuan-zheng.github.io/zh/p/eject-disk-images/</link>
            <pubDate>Sat, 08 Aug 2026 14:00:00 +0200</pubDate>
            <guid>https://jingyuan-zheng.github.io/zh/p/eject-disk-images/</guid>
            <description>&lt;p&gt;本文介绍 &lt;strong&gt;Eject Disk Images&lt;/strong&gt;：一个易于上手的 macOS 快捷指令，可以一次弹出当前已挂载的 DMG、ISO 和其他由 macOS 磁盘映像服务管理的镜像，同时不会主动处理普通外置磁盘。&lt;/p&gt;&#xA;&lt;p&gt;在 Mac 上安装软件时，我们经常需要双击 &lt;code&gt;.dmg&lt;/code&gt; 文件。软件安装完成后，安装镜像却还会留在 Finder 的侧边栏里。只剩一个时手动推出并不麻烦，但连续安装几个 App 后，逐个清理就显得有些琐碎。这个开源项目就是为了解决这一步：把清理多个磁盘映像变成一次快捷操作。&lt;/p&gt;&#xA;&lt;h2 id=&#34;eject-disk-images-是什么&#34;&gt;Eject Disk Images 是什么？&#xA;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Eject Disk Images&lt;/strong&gt; 是一个 macOS 快捷指令，同时提供对应的 AppleScript 源码。它会查看 macOS 当前通过 &lt;code&gt;DiskImages&lt;/code&gt; 和 &lt;code&gt;hdiutil&lt;/code&gt; 管理的磁盘映像，然后一次处理符合条件的镜像。&lt;/p&gt;&#xA;&lt;p&gt;它适合处理常见的：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;.dmg&lt;/code&gt; 软件安装镜像；&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;.iso&lt;/code&gt; 光盘镜像；&lt;/li&gt;&#xA;&lt;li&gt;其他已经挂载，并出现在 macOS 磁盘映像列表中的镜像。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;如果你刚刚安装完几个 Mac 软件、临时打开过 ISO，或者 Finder 里残留了多个安装卷宗，这个快捷指令可以帮你快速恢复整洁的桌面和侧边栏。&lt;/p&gt;&#xA;&lt;h2 id=&#34;它会弹出什么不会弹出什么&#34;&gt;它会弹出什么？不会弹出什么？&#xA;&lt;/h2&gt;&lt;p&gt;这个项目特意把安全边界写得很清楚：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;它只处理 macOS 磁盘映像服务管理的镜像；&lt;/li&gt;&#xA;&lt;li&gt;不会主动弹出普通 U 盘、移动硬盘或外置 SSD；&lt;/li&gt;&#xA;&lt;li&gt;默认使用正常的、非强制的弹出方式；&lt;/li&gt;&#xA;&lt;li&gt;如果某个镜像正在被文件或应用使用，macOS 可能会保留它，不会强行中断当前操作。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;因此，它适合清理已经用完的安装镜像，不适合强行移除正在使用的存储设备或文件。如果有镜像没有成功弹出，请先关闭正在使用它的文件或应用，再运行一次快捷指令。&lt;/p&gt;&#xA;&lt;h2 id=&#34;安装快捷指令&#34;&gt;安装快捷指令&#xA;&lt;/h2&gt;&lt;p&gt;最快的方式是打开下面的 iCloud 安装链接：&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.icloud.com/shortcuts/c4e2e57ed36d4b4db518576ab9f6f425&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;通过 iCloud 获取 Eject Disk Images 快捷指令&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;macOS 打开“快捷指令”App 后，点击“获取快捷指令”或“添加快捷指令”即可。你也可以前往 &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/Eject-Disk-Images&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Eject-Disk-Images GitHub 仓库&lt;/a&gt;，下载其中的 &lt;code&gt;Eject Disk Images.shortcut&lt;/code&gt; 文件，再用“快捷指令”App 导入。&lt;/p&gt;&#xA;&lt;p&gt;这个项目只使用 macOS 自带的工具，不需要另外安装第三方软件。快捷指令版本需要系统自带的“快捷指令”App。&lt;/p&gt;&#xA;&lt;h2 id=&#34;怎么使用&#34;&gt;怎么使用？&#xA;&lt;/h2&gt;&lt;ol&gt;&#xA;&lt;li&gt;打开“快捷指令”App，或者通过 Spotlight、Siri、菜单栏和键盘快捷键运行它。&lt;/li&gt;&#xA;&lt;li&gt;安装完 DMG 软件、使用完 ISO，或发现 Finder 中积累了多个磁盘映像后，运行 &lt;strong&gt;Eject Disk Images&lt;/strong&gt;。&lt;/li&gt;&#xA;&lt;li&gt;等待 macOS 弹出当前可以安全分离的镜像。&lt;/li&gt;&#xA;&lt;li&gt;如果有镜像因为正在使用而保留，请关闭相关文件或应用，再运行一次。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;你不需要先在 Finder 中逐个选中卷宗。快捷指令每次运行时都会重新查看当前已挂载的磁盘映像，因此即使一次积累了多个安装镜像，也可以一起清理。&lt;/p&gt;&#xA;&lt;h2 id=&#34;也可以使用-applescript&#34;&gt;也可以使用 AppleScript&#xA;&lt;/h2&gt;&lt;p&gt;仓库中还提供了可阅读的 &lt;code&gt;Eject Disk Images.scpt&lt;/code&gt; 源码。你可以用 macOS 自带的“脚本编辑器”打开并运行它；如果希望以后像普通 App 一样双击使用，也可以在“脚本编辑器”中将 AppleScript 导出为应用程序。&lt;/p&gt;&#xA;&lt;p&gt;对大多数人来说，快捷指令版本最简单。如果你希望查看原理、自己修改流程，或者想把它保存成一个独立 App，AppleScript 版本会更合适。&lt;/p&gt;&#xA;&lt;h2 id=&#34;原理简介&#34;&gt;原理简介&#xA;&lt;/h2&gt;&lt;p&gt;简单来说，项目会先询问 macOS：当前有哪些磁盘映像由 &lt;code&gt;hdiutil&lt;/code&gt; 管理？然后读取这些镜像对应的设备标识，再交给 macOS 正常的分离流程处理。它读取的是磁盘映像列表，而不是把所有已连接的卷宗都扫一遍，所以能够把安装镜像和普通外置存储区分开来。&lt;/p&gt;&#xA;&lt;p&gt;这也是它比“把所有磁盘都弹出”的做法更稳妥的原因：它只针对当前的问题——清理已经用完的 macOS 磁盘映像。项目源码采用 MIT 许可证，欢迎前往 &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/Eject-Disk-Images&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;GitHub 仓库&lt;/a&gt; 下载、查看和使用。&lt;/p&gt;&#xA;</description>
        </item></channel>
</rss>
