免终端:用Platypus三步把脚本打包成macOS应用

发布时间:2026/10/28 16:06:08

免终端:用Platypus三步把脚本打包成macOS应用 免终端用Platypus三步把脚本打包成macOS应用【免费下载链接】PlatypusCreate native macOS applications from command line scripts.项目地址: https://gitcode.com/gh_mirrors/pl/Platypus你写完了一个处理文件的脚本但需要用它的同事从没用过终端连怎么运行一个 .py 文件都不知道。Platypus 解决的就是这类问题它把命令行脚本包进一个标准的 macOS 应用程序包.app一种系统认得的特殊文件夹生成的应用能从 Finder 或 Dock 直接双击启动运行全程不需要命令行脚本输出会显示在你选定的窗口或菜单里。先说清Platypus能干什么和不能干什么 Platypus 是一个用 Objective-C 写的 macOS 开源开发者工具BSD 许可证2003 年起持续维护。它的原理不复杂把你的脚本和一个精简的执行二进制放进同一个 .app二进制读取应用内的 AppSettings.plist运行脚本再把输出按你选的界面逐行展示。你还可以在 Bundled Files 里添加支持文件它们会随脚本一起被复制进应用的 Resources 目录。适合快速做安装器、拖放工具、菜单栏小工具、启动器或把脚本交给非技术用户不适合构建复杂的交互式图形应用它不是 GUI 开发环境运行需要与用户通过标准输入对话的脚本如 Python 的input()、sudo 输密码三步跑通最小流程 先要拿到 Platypus 本身README 在作者官网给出了发布版下载链接约 3.5MB也可以从源码构建git clone https://gitcode.com/gh_mirrors/pl/Platypus cd Platypus make build_unsigned构建需要 Xcode 命令行工具产物在products目录里。之后的操作都在图形界面里完成。第一步 选脚本并让解释器自动识别打开 Platypus点 Select 按钮挑选脚本也可以直接把文件拖进窗口填好应用名。Platypus 会根据文件后缀和脚本首行的 shebang#!行猜测解释器通常不用手动设置猜错了就在 Script Type 下拉框里选或点 Args 按钮追加解释器参数。第二步 选界面类型和应用图标界面共六种None无窗口、Progress Bar进度条、Text Window文本窗口、Web View把输出当 HTML 渲染、Status Menu菜单栏、Droplet拖放窗口。拿不准就先选 Text Window。图标可用预设或导入 .icns 文件——后者在小尺寸下显示效果更好。第三步 点Create拿到成品应用点 Create 按钮应用就出现在你选择的目录里。想一边改脚本一边测试的话在弹出对话框里勾选 Create symlink应用会以符号链接引用原始脚本而不是复制一份。做出三种真实场景应用 让应用接收拖放的文件场景用户想把一堆图片发给你压缩。做法勾选 Accept dropped items在 Drop Settings 面板里用后缀名或 UTI 限定接受的文件类型文件被拖到应用图标上时路径会作为参数传给脚本再勾选 Accept dropped text 还能把拖进来的文本送进脚本的标准输入。效果用户不需要点任何按钮拖放就是操作。仓库 Examples 里的 ImageResizer用系统自带 sips 工具缩放图片和 TarGzipper把拖入的文件打包压缩就是这类应用。做一个菜单栏状态应用场景想让一个小工具常驻菜单栏。做法选 Status Menu 界面类型。每次点击状态项脚本就运行一次输出的每一行变成一个菜单项用户点某个菜单项时脚本会带着该项的文字作为参数再跑一次所以脚本能靠有没有参数区分是在列清单还是执行动作。MacbethMenu 示例就用这个套路把莎士比亚的诗句读出来。用profile配合命令行批量生成场景想把打包脚本应用纳入 CI 构建流程。做法在图形界面调好设置经 Profiles 菜单存成 .platypus 配置文件plist 格式再安装命令行工具platypus 二进制会装到 /usr/local/bin/装好后不再依赖图形界面一条命令即可重建应用/usr/local/bin/platypus -P myProfile.platypus MyApp.app效果配置只维护一份批量生成可重复。避开四个最容易踩的坑 ⚠️现象原因解决办法脚本输出最后才一次性出现语言输出缓冲Python 在 Args 里给解释器加-u关闭缓冲或在代码里 flushPerl 用$| 1脚本索要输入应用卡死生成的应用没有交互式 stdinsudo 或input()会一直等待需要提权时勾选 Run with root privileges脚本自身不要写 sudo首次打开提示 Gatekeeper 批准生成的应用默认未签名用codesign签名或让用户右键应用选打开脚本里的命令找不到GUI 启动的应用不加载用户 shell 环境变量解释器设/bin/bash并在 Args 加-l或脚本开头source ~/.bashrc在仓库里找到这些资料 完整文档全部界面类型、PROGRESS: / ALERT: 等脚本输出控制语法、完整 FAQDocumentation/Documentation.md18 个 .platypus 示例配置可在应用 Profiles 菜单直接打开Examples/命令行工具源码CLT/platypus_clt.m生成应用的执行逻辑如何启动脚本、如何捕获输出ScriptExec/SEController.m构建入口make build_unsigned目标定义在此MakefilePlatypus 把脚本变应用压缩成几次点击它的价值在于让非技术用户零门槛地用上你的脚本。建议下一步从 Profiles 菜单打开一个内置示例如 AlertMe点 Create 跑一遍整个闭环就清楚了。【免费下载链接】PlatypusCreate native macOS applications from command line scripts.项目地址: https://gitcode.com/gh_mirrors/pl/Platypus创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/27 22:18:09

大模型降智是错觉还是事实,多维度对比告诉你答案

是模型变笨了,还是我们的感觉出了错? 最近社区里关于“大模型降智”的讨论热度居高不下。很多开发者都有类似的体感:明明上周还能完美解决的复杂逻辑题,这周再问却得到了一个敷衍甚至错误的回答。这种落差感让人不禁怀疑&#xf…

2026/10/26 1:20:30

【算法从零到千】【59-65】链表专题

1. 两数相加 2. 两数相加https://leetcode.cn/problems/add-two-numbers/https://leetcode.cn/problems/add-two-numbers/ 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两…

2026/10/28 16:02:09

MaxKB:大模型知识库管理与RAG技术实践

1. MaxKB:大模型知识库管理的革命性工具在人工智能技术快速发展的今天,大模型知识库已成为企业和个人高效管理信息的核心基础设施。MaxKB作为一款专为大模型设计的知识库管理系统,正在改变我们构建、管理和利用知识的方式。我第一次接触MaxKB…

2026/10/28 16:02:09

PPO强化学习在大模型微调中的应用与实践

1. 项目概述:PPO强化学习与大模型微调大模型微调领域最近有个特别火的技术叫PPO(Proximal Policy Optimization),它能让大语言模型像ChatGPT那样"听话"。我第一次接触这个概念是在调试一个开源LLaMA模型时,发…

2026/10/28 16:02:09

STM32读写AD7190:24位ADC称重例程的寄存器配置与标定全解析

简介:面向STM32单片机开发者,压缩包内提供了基于AD7190的24位称重模块读写与TFT液晶显示完整例程。源码采用HAL库编写,涵盖系统时钟配置、串口调试、3.5寸液晶初始化、重量采集均值滤波、按键清零与砝码校准等关键流程,可直接移植…

2026/10/28 16:02:09

AI大模型技术栈解析与程序员转型指南

1. 为什么AI大模型成为程序员未来5年的黄金赛道?过去两年间,AI大模型技术以每月都有突破的速度发展。从GPT-3到最新的多模态模型,参数量从百亿级跃升至万亿级,这种技术迭代速度在计算机发展史上极为罕见。作为从业15年的全栈开发者…

2026/10/28 16:02:09

STM32主从车嵌入式竞赛源码解析:循迹、避障与双车协作

简介:面向百科融创杯嵌入式技术与应用开发赛项的主车及从车端完整项目源码,专为竞赛选手、嵌入式课程设计及毕业设计开发者打造。作者在这份高分项目中给出了完整的赛题实现方案,代码注释详尽,逻辑清晰,新手也能顺畅理…

2026/10/28 15:57:06

局部高斯分布拟合能量在活动轮廓模型中的应用

1. 项目概述:基于局部高斯分布拟合能量的活动轮廓模型在计算机视觉领域,图像分割一直是个经典而富有挑战性的任务。传统阈值分割、边缘检测等方法在面对复杂纹理、低对比度图像时往往表现不佳。而活动轮廓模型(Active Contour Model&#xff…

2026/10/28 14:42:12

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/28 15:28:56

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/28 3:32:29

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/28 0:02:13

Python股票自动交易系统源码解析:从行情获取到风控的完整链路

简介:这份资源是面向高校计算机、金融相关专业毕业设计场景的完整项目源码包,主题为基于Python的股票自动交易系统,适合需要完成毕设选题、课程设计或自学金融量化交易开发的学生与开发者参考。压缩包共收录687个文件,整体约14.93…

2026/10/28 0:02:13

视酷酷信IM源码部署指南:Java 17+MySQL 8.0.33实战配置

简介:这是一套2024年亲测可部署的视酷酷信IM即时通讯系统源码,面向具备Java、OC、C#及Vue开发能力的技术人员,解决私有化即时通讯平台快速搭建与二次定制需求,尤其适用于需集成商城、保障数据主权的中小型企业或独立开发者。资源共…

2026/10/28 0:02:13

Python爬取百度迁徙数据:接口解析、批量采集与避坑指南

简介:这份资源是一个用Python爬取百度迁徙数据的脚本压缩包,面向具备Python基础、希望入门网络爬虫与数据解析的开发者,解决按日期获取全国热门城市人口迁徙数据的问题。包内共1个文件,为单个py脚本,压缩包约1KB&#…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑