Pasteboard-Viewer自动化脚本:使用AppleScript和Shell脚本批量处理剪贴板数据
Pasteboard-Viewer自动化脚本使用AppleScript和Shell脚本批量处理剪贴板数据【免费下载链接】Pasteboard-Viewer Inspect the system pasteboards on macOS项目地址: https://gitcode.com/gh_mirrors/pa/Pasteboard-ViewerPasteboard-Viewer是一款专业的系统剪贴板查看工具专为macOS开发者设计。这款强大的剪贴板嗅探工具不仅提供了直观的图形界面还支持通过自动化脚本进行批量处理。本文将详细介绍如何利用AppleScript和Shell脚本结合Pasteboard-Viewer实现剪贴板数据的自动化处理大幅提升工作效率。为什么需要剪贴板自动化处理在日常开发工作中我们经常需要处理剪贴板数据复制代码片段、提取文本内容、分析数据结构等。手动操作不仅效率低下还容易出错。通过自动化脚本您可以批量处理多个剪贴板项目自动提取特定格式的数据定时清理剪贴板历史将剪贴板内容保存到文件与其他工具集成实现工作流自动化Pasteboard-Viewer的核心功能Pasteboard-Viewer支持多种剪贴板格式包括文本、RTF、图片、文件URL等。通过查看 Pasteboard.swift 文件您可以了解其核心数据结构struct Type_: Hashable, Identifiable { let item: Item let xType: XPasteboard.PasteboardType var id: String { \(item.id)-\(xType.rawValue) } var title: String { xType.rawValue } }使用AppleScript自动化Pasteboard-Viewer基础AppleScript脚本AppleScript是macOS上强大的自动化语言可以直接控制Pasteboard-Viewer。以下是一个基础示例tell application Pasteboard Viewer activate -- 获取当前剪贴板内容 set clipboardContent to get pasteboard items -- 处理每个项目 repeat with item in clipboardContent display dialog 剪贴板项目: (item as string) end repeat end tell高级自动化示例结合macOS的Shortcuts应用您可以创建更复杂的自动化工作流。Pasteboard-Viewer提供了三个主要的App Intent获取剪贴板项目- 通过 GetPasteboardItemsIntent 实现获取剪贴板内容为文件- 通过 GetPasteboardContentsAsFilesIntent 实现清空剪贴板- 通过 ClearPasteboardIntent 实现Shell脚本集成方案基础Shell脚本通过Shell脚本您可以批量处理剪贴板数据#!/bin/bash # 清空剪贴板历史 osascript -e tell application Pasteboard Viewer to clear pasteboard # 等待新内容 sleep 2 # 处理剪贴板内容 pbpaste clipboard_content.txt echo 剪贴板内容已保存到 clipboard_content.txt # 分析内容类型 pbpaste -Prefer txt clipboard_text.txt pbpaste -Prefer rtf clipboard_rtf.txt定时任务自动化使用cron或launchd创建定时任务自动清理剪贴板# 每天凌晨3点自动清空剪贴板 0 3 * * * osascript -e tell application Pasteboard Viewer to clear pasteboard实用自动化脚本合集1. 剪贴板内容监控脚本#!/bin/bash # 监控剪贴板变化并记录日志 previous_content while true; do current_content$(pbpaste 2/dev/null) if [ $current_content ! $previous_content ]; then echo $(date): 剪贴板内容已更新 clipboard_log.txt echo $current_content clipboard_history.txt previous_content$current_content fi sleep 1 done2. 批量格式转换脚本#!/bin/bash # 批量转换剪贴板格式 for format in public.rtf public.html public.plain-text; do pbcopy -pboard general -type $format clipboard_${format}.txt echo 已保存 $format 格式内容 done3. 开发调试辅助脚本#!/bin/bash # 开发调试时使用的剪贴板分析工具 echo 剪贴板分析报告 echo 生成时间: $(date) echo echo 1. 剪贴板类型: pbpaste -Prefer txt /dev/null 21 echo ✓ 支持纯文本 pbpaste -Prefer rtf /dev/null 21 echo ✓ 支持RTF格式 pbpaste -Prefer html /dev/null 21 echo ✓ 支持HTML格式 echo echo 2. 内容预览: pbpaste | head -20高级应用场景场景一代码片段管理#!/bin/bash # 自动保存复制的代码片段 timestamp$(date %Y%m%d_%H%M%S) content$(pbpaste) if [[ $content ~ ^(function|def|class|import|export) ]]; then echo $content code_snippets/snippet_${timestamp}.js echo 代码片段已保存 fi场景二数据提取自动化#!/bin/bash # 从剪贴板提取URL和邮箱 pbpaste | grep -oE (https?://[^[:space:]]|mailto:[^[:space:]]) extracted_data.txt echo 已提取 $(wc -l extracted_data.txt) 个链接和邮箱场景三跨应用工作流#!/bin/bash # 将剪贴板内容发送到其他应用 content$(pbpaste) # 发送到Notes应用 osascript EOF tell application Notes tell account iCloud tell folder 剪贴板存档 make new note with properties {name:$(date), body:$content} end tell end tell end tell EOF性能优化技巧缓存机制Pasteboard-Viewer内置了缓存机制避免频繁访问系统剪贴板异步处理使用后台进程处理大量数据内存管理及时清理不再需要的数据#!/bin/bash # 优化性能的脚本示例 # 使用临时文件处理大数据 temp_file$(mktemp) pbpaste $temp_file # 处理文件内容 process_content $temp_file # 清理临时文件 rm $temp_file安全注意事项⚠️重要提示剪贴板可能包含敏感信息请妥善处理自动化脚本应运行在受信任的环境中定期检查脚本权限设置避免在公共计算机上保存剪贴板历史故障排除常见问题解决权限问题确保Pasteboard-Viewer有剪贴板访问权限脚本执行失败检查AppleScript语法和路径性能问题减少不必要的剪贴板访问调试技巧# 启用详细日志 set -x # 执行脚本 ./clipboard_automation.sh # 查看执行过程总结通过结合Pasteboard-Viewer和自动化脚本您可以构建强大的剪贴板处理工作流。无论是日常开发调试还是批量数据处理这些脚本都能显著提升您的工作效率。核心优势✅ 完全自动化减少手动操作✅ 支持多种数据格式✅ 易于集成到现有工作流✅ 开源免费可自由定制开始尝试这些自动化脚本让剪贴板处理变得更加高效和智能【免费下载链接】Pasteboard-Viewer Inspect the system pasteboards on macOS项目地址: https://gitcode.com/gh_mirrors/pa/Pasteboard-Viewer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考