脚本菜单
iRightMenu Pro 的”脚本菜单”让你写一段代码作为右键菜单——选中文件、右键、点菜单,脚本就跑,自动拿到选中文件的完整路径。
想看完整技术细节(参数获取、环境变量、文件匹配规则、管理员权限、osascript 写法等)?看 脚本开发指南。
5 分钟创建一个脚本菜单
- 打开 iRightMenu Pro 主界面 → 菜单编辑器
- 中间面板右键 → 添加 → 脚本
- 在右侧 Inspector 面板填写:
- 标题:菜单上显示的文字
- 脚本内容:要跑的代码
- 反馈方式:建议先选”结果对话框”——这样脚本输出会弹窗显示,方便调试
- 保存。回到 Finder,选中任意文件,右键,点你的菜单
Hello World
“脚本内容”填这一行:
echo "Hello, $1"
$1 就是你选中文件的完整路径。运行后看到 Hello, /Users/... 即成功。
多文件循环(最常用模板)
for f in "$@"; do
echo "处理: $f"
done
"$@" 是所有选中文件。路径变量必须用双引号包起来——不然含空格的路径会被拆开(macOS 用户目录里很多含空格路径,如 Application Support)。
5 个常用菜谱
直接复制脚本内容到菜单,调整标题 / 匹配规则即可使用。
用 VSCode 打开
/usr/local/bin/code "$@"
如果 VSCode 装在别处,调整路径。已装 code CLI 可直接写 code "$@"。
显示选中项目总大小
du -ch "$@" | tail -1
把”反馈方式”设为”结果对话框”,弹窗里看汇总大小。
创建到桌面的快捷方式
for f in "$@"; do
ln -s "$f" "$HOME/Desktop/$(basename "$f")"
done
复制 MD5 到剪贴板
md5 "$@" | pbcopy
osascript -e "display notification \"已复制 $# 个 MD5\" with title \"iRightMenu\""
移到回收站(保留可恢复)
需先安装 trash 工具:brew install trash
trash "$@"
比 rm 安全——可以从回收站恢复。
遇到问题怎么办
右键看不到菜单
最常见——文件匹配规则不对。在 Inspector 的”匹配规则”分组检查:
- 文件匹配类型:
无= 所有文件都显示;扩展名= 只对列表里的扩展名显示 - 数量限制:
最少文件数/最多文件数设错也会让菜单不出现 - 显示在文件 / 文件夹:勾选不对的话,菜单不会显示
命令找不到(”command not found”)
脚本运行环境的 PATH 不读你的 ~/.zshrc,所以你常用的别名 / 自定义路径默认拿不到。两种修法:
- 用完整路径(如
/usr/local/bin/foo而不是foo) - 在 Inspector 填”自定义 PATH” 加上你的目录
路径含空格出错
变量必须双引号包:写 "$f" 不是 $f。macOS 用户目录有不少含空格路径(如 Application Support、Group Containers)。
看不到脚本输出
“反馈方式”切到”结果对话框”,每次跑会弹窗显示输出。
看完整执行记录
每个脚本都有独立日志文件:iRightMenu Pro → 偏好设置 → 高级 → “打开日志目录”,里面 Scripts/<菜单标题>.log 就是完整记录(含每次执行的退出码、输出、参数、环境变量)。
想做更多
- 用 AppleScript / JavaScript / Python 写(参数获取方式不同)
- 设置脚本以管理员身份运行
- 菜单只对特定扩展名 / 正则匹配的文件显示
- 脚本访问剪贴板 / 控制其他 App / 自定义环境变量
完整说明、所有选项、调试技巧都在 脚本开发指南 里。
如果你想把脚本”打包成可分发的产品”——带 UI 表单、可以上传到插件商店——就该写 Lua 插件 了。