You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS Automator中如何使用相对路径调用本地HTML文件

解决Automator工作流中本地HTML相对路径问题

问题分析

你的脚本核心问题是路径处理逻辑错误:

  • $APP_PATH是Automator.app的完整路径(比如/xxx/portable folder/Automator.app),执行cd "$APP_PATH"会进入该App的包内容目录,而非portable folder根目录
  • 直接使用/assets/my-file.html是系统根目录下的绝对路径,并非你实际的portable folder/assets目录

修正后的Shell脚本

APP_PATH="$1"
# 获取Automator.app所在的父目录(即portable folder根目录)
PARENT_DIR=$(dirname "$APP_PATH")
# 拼接HTML文件的完整本地路径
HTML_FILE="$PARENT_DIR/assets/my-file.html"
# 转换为Chromium兼容的file://协议路径(处理空格等特殊字符)
FILE_URL="file://$(realpath "$HTML_FILE")"

# 启动便携版Chromium并打开目标HTML
open -n -a "$PARENT_DIR/Chromium.app" --args \
  --user-data-dir='/tmp/chrome_dev_test' \
  --allow-file-access-from-files \
  --allow-file-access \
  --allow-running-insecure-content \
  "$FILE_URL"

关键修改点

  • 锁定便携根目录:用dirname "$APP_PATH"拿到portable folder的路径,确保所有路径都基于这个可移动目录,满足便携需求
  • 适配浏览器路径规则:转换为file://协议路径,避免Chromium对本地文件路径解析出错
  • 明确指定Chromium版本:用"$PARENT_DIR/Chromium.app"启动当前便携目录内的Chromium,而非系统默认安装版本
  • 处理特殊路径字符:realpath自动转义路径中的空格等特殊字符,避免Shell解析报错

内容的提问来源于stack exchange,提问作者Cooper Lang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 11:05:19