如何在Automator中通过Shell生成带自定义变量的HTML文件
Automator调用已有变量写入HTML文件的解决方法
Automator完全支持调用你提前保存的自定义变量做内容替换,下面是两种可直接落地的操作方案:
方案1:复用现有Shell脚本动作(更灵活,适合需要后续执行其他脚本的场景)
- 把你之前保存的3个变量(新文件夹名称、网页标题、https链接)按顺序拖拽到「运行Shell脚本」动作的输入区域(脚本代码框的上方)
- 将「运行Shell脚本」动作的传递输入选项设置为
作为参数 - 替换你现有的Shell脚本为以下内容,注意替换代码里的固定根目录为你自己的实际路径:
# 变量顺序和你拖拽到输入区的顺序完全对应,以下为示例顺序 ROOT_DIR="/Users/你的用户名/你的固定工作目录路径" FOLDER_NAME="$1" PAGE_TITLE="$2" TARGET_URL="$3" # 自动创建文件夹+写入带变量的HTML内容 mkdir -p "${ROOT_DIR}/${FOLDER_NAME}" cat > "${ROOT_DIR}/${FOLDER_NAME}/index.html" << EOF <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>${PAGE_TITLE}</title> </head> <body> <script>window.location.href = "${TARGET_URL}"</script> </body> </html> EOF # 此处接你需要执行的后续脚本逻辑
注意:所有变量外层包裹双引号,避免文件夹名称/标题带空格时执行报错。
方案2:用Automator原生动作实现(无需修改复杂Shell代码)
- 新增「文本」动作,在文本编辑框内写好你的HTML固定模板,需要插入变量的位置,直接把右侧变量列表里对应的自定义变量拖拽到对应位置即可,Automator会自动做内容替换
- 新增「写入文件」动作,选择你之前创建的新文件夹路径,填写文件名为
index.html,勾选「替换已有文件」 - 后续接你要运行的其他脚本动作即可。
内容的提问来源于stack exchange,提问作者Pablo Smith
相关产品推荐
相关产品推荐

