=Start=
缘由:
简单整理一下近期看到的和自动操作(Automator)有关的使用技巧,方便后面有需要的时候参考。
简单来说就是,macOS上的自动操作当前还适合的场景为:
- PDF文件处理(拆分、合并)
- 监控特定文件夹的文件新增情况然后触发特定操作(遥控触发器)
- 日历提醒(由日历中的日程触发运行,它们不接收任何输入)
- 将shell脚本包装成一个“应用程序”
其它的还有哪些合适的场景后面实际用到了再逐步补充。
正文:
参考解答:
macOS设备上的自动操作(Automator)是一个强大的工具,它允许用户创建自定义的工作流来自动化日常任务。以下是几种妙用,展示了如何利用Automator提高效率和简化工作流程:
1. 文件管理
- 批量重命名文件:可以创建一个工作流,用于根据特定规则批量重命名文件或文件夹。
- 移动和组织文件:设置动作以自动将文件移动到不同的文件夹中,基于文件类型、日期或其他属性。(这个感觉可以有)
- 压缩/解压多个文件:创建一个服务或快速操作,一键压缩或解压多个文件。
2. 图像处理(这个感觉可以有)
- 调整图片大小:构建一个工作流来批量调整图像的分辨率或尺寸。
- 转换图像格式:使用预设的动作或通过脚本实现不同格式间的转换。
- 应用滤镜或效果:结合AppleScript或第三方应用程序对图片施加特效。
3. 文本编辑与处理
- 文本替换:编写一个Shell脚本或使用内建动作来进行批量化文本查找和替换。
- 生成报告:从日志文件或者其他数据源提取信息,并格式化为易于阅读的文档。
- 清理剪贴板历史:定期清除系统剪贴板内容,保护隐私。
4. 网页抓取(这个感觉可以有)
- 下载网页资源:例如下载网站上的所有图片链接。
- 提取HTML元素:解析网页结构并提取特定部分的数据,如标题、链接等。
5. 自动发送邮件
- 定时发送邮件:设定触发器,在特定时间点发送预写好的电子邮件。
- 个性化邮件营销:读取CSV文件中的联系人列表,并向每位收件人发送个性化的邮件。
6. 多媒体处理
- 音频文件编码:改变音频文件的编解码方式或调整音量。
- 视频转码:批量转换视频文件的格式或压缩率。
7. 应用程序启动与控制
- 快捷启动常用软件:创建一个工作流来一键启动一系列经常使用的应用程序。
- 自动化iTunes播放列表更新:添加新歌曲到播放列表或者同步音乐库。
8. 开发者工具
- Git命令行集成:通过Automator封装常用的Git命令,简化版本控制系统操作。
- 代码片段管理:创建一个简单的界面来管理和插入常用的代码段。
9. 系统维护
- 清理临时文件:定期清理不再需要的缓存和其他临时文件。
- 磁盘空间监控:检查硬盘使用情况,并通知用户当存储容量接近满时采取行动。
10. 定制工作流和服务
- 定制化服务:根据个人需求创建独特的服务,如一键备份重要文件夹至云存储。
- 快速操作:利用Quick Actions(快速操作),可以在Finder右键菜单中直接访问你创建的工作流。
通过探索和实践,你可以发现更多关于如何利用Automator来满足特定需求的方法。记住,Automator的强大之处在于它可以与其他macOS技术如AppleScript、Shell脚本以及各种API相结合,从而扩展其功能。此外,随着macOS系统的更新,Automator的能力也在不断进化,所以保持关注最新的变化和技术文档是非常有益的。
Automator 手册第八章:用文件夹操作把手机打造成 Mac 的遥控器
这篇文章的思路学习到了(尤其是借助iCloud文件夹的变化达到“遥控”效果这一点上很精妙),但是设定变量的值,获取下载URL那里没有测试成功,可能还是因为我不够熟练,后面有机会可以再试试。
下载对应的workflow文件试了试也不行,可能是macOS系统(Sequoia 15.2)不一样,Automator(版本2.10 (526))的功能发生了变化导致以往可能有效的方案现在无法生效。
macOS 端版本一:使用现成模块
- 过滤访达项目:过滤出文件夹中的 txt 文件。其实 Shortcuts 已经清理过一遍文件夹,再用 Automator 过滤是上一道双保险。
- 设定变量的值:将过滤出来的文件设为“文件”变量,便于随后灵活取用。
- 打开访达项目:用脚文本编辑器3打开“文件”。
- 暂停:停顿 2 秒,等文本编辑器完全打开。在配置好的电脑上也许可以不用花这几秒时间。
- 获得文本编辑文稿的内容:获取文本文件“文件”中的下载链接。
- 设定变量的值:将下载链接设为变量“链接”,留待稍后取用。
- 退出应用程序:退出脚本编辑器。
- 获得变量的值:获取“文件”。
- 将访达项目移到废纸篓:将“文件”删除。
- 获得变量的值:获取“链接”。
- 下载 URL:下载刚刚获取的链接。
macOS 端版本二:使用脚本
这次我们使用 AppleScript 脚本来下载,以便调用 Aria2 这一下载利器。
我们沿用上一小节的动作,只把最后一步改成 “运行 AppleScript”,替换原来的 HTTP 下载方式。
在macOS系统上将“预览”不可复制的PDF文件转换成内容可复制的PDF文件。
操作步骤:
- 使用【自动操作】中的【将PDF页面渲染为图像】(Render PDF Pages as Images.action)功能,将传递来的PDF文稿的每一页渲染为图像(生成的图片文件的位置比较深,找起来其实不是太方便)。
- 再用【自动操作】中的【用图像新建PDF】(New PDF from Images.action)功能,将刚才生成的多张图像,创建一份多页PDF文稿。
- 再通过【预览】应用打开第2步生成的PDF文件,即可在预览应用里面对PDF的文字内容进行选中和复制了。
文稿类型:
文件夹操作——当文件被添加到某个特定的文件夹之后可以促使该工作流程运行,并将被添加到该文件夹的文件作为该工作流程的输入。简单来说,可以当作一个“触发器”来用(当往特定文件夹中添加文件后就执行特定的动作,比如打开计算器)。
Todo:当前还没有学会如何读取文件的内容,并将内容传递给一个变量,方便后面使用传入的文件的内容(进行一些特定的操作,比如文件内容是一个URL链接的话就打开这个链接,进行下载等其它所需的操作)。
工作流程——工作流程可以在“自动操作”内部运行。
==
文稿拆分:
- 拆分PDF:从输入PDF文稿的每一页新建单页PDF文稿。
- 将PDF页面渲染为图像:此操作会将传递来的PDF文稿的每一页渲染为图像。
文稿合并:
- 用图像新建PDF:用几个输入图像创建一份多页PDF文稿。
- 合并PDF页面:此操作会将传递来的PDF文稿的页面合并为一个PDF文稿。
- 给PDF文稿添加水印:此操作会将图像绘制到PDF文稿的每一页。
……待补充……
截图后OCR并将文字内容拷贝至剪贴板的命令
PATH=$PATH:/usr/local/bin/
screencapture -i ~/ocr.png
tesseract ~/ocr.png stdout --oem 1 --psm 6 -l chi_sim+eng -c preserve_interword_spaces=1 | pbcopy
rm ~/ocr.png
参考链接:
Automator 手册第八章:用文件夹操作把手机打造成 Mac 的遥控器
https://utgd.net/article/20227
Automator Gallery
https://github.com/BlackwinMin/Automator-gallery/
文件夹操作
https://github.com/BlackwinMin/automator-gallery/tree/master/%23Folder%20Action
OCR Screencapture.workflow
https://github.com/BlackwinMin/automator-gallery/tree/master/OCR%20Screencapture
=END=