跳转到内容

Alfred Workflow 效率神器完全指南 2026

Alfred Workflow 效率神器

效率是可以学习的。 Alfred 是 Mac 平台上最强大的效率工具之一,它不仅能替代 Spotlight,更是一个强大的自动化平台。掌握 Alfred 的 Workflow 功能,可以让你的日常操作效率提升数倍。本文带你从零到精通 Alfred,成为效率达人。

本文将带你系统掌握:

  • ✅ Alfred 基础设置与配置
  • ✅ Powerpack 核心功能
  • ✅ Workflow 开发入门
  • ✅ 实用 Workflow 推荐
  • ✅ 自动化脚本与 Python/Shell 集成
  • ✅ 快捷键与效率技巧
  • ✅ 自定义主题与皮肤

一、Alfred 简介

1.1 什么是 Alfred

Alfred 是一个 Mac 上的效率启动器,通过快捷键呼出搜索框,快速执行各种操作:

  • 快速启动应用
  • 搜索文件
  • 执行命令
  • 计算与单位转换
  • 字典查询
  • 网页搜索
  • 自动化工作流(Workflow)

1.2 为什么选择 Alfred

功能SpotlightAlfred FreeAlfred Powerpack
应用启动
文件搜索
计算器
字典
自定义搜索
Workflow
剪贴板历史
浏览器书签搜索
脚本执行

💡 Powerpack 是付费升级(¥149),但对于开发者来说非常值得。

1.3 下载安装

官网下载: https://www.alfredapp.com/

通过 Homebrew 安装:

bash
brew install --cask alfred

首次配置:

  1. 打开 Alfred Preferences(双击 Alfred 图标或 option + space
  2. 设置快捷键(默认 option + space
  3. 购买并激活 Powerpack

二、基础配置

2.1 关键字设置

打开 Alfred Preferences → Features:

常用关键字:

  • calc - 计算器
  • dict - 字典
  • define - 定义
  • translate - 翻译
  • open - 打开文件/文件夹

2.2 自定义搜索

添加自定义搜索源:

  1. Preferences → Features → Web Search
  2. 点击 "Add Custom Search"
  3. 填写搜索名称、关键字、URL

示例:

名称关键字URL
Googleghttps://www.google.com/search?q={query}
GitHubghhttps://github.com/search?q={query}
MDNmdnhttps://developer.mozilla.org/zh-CN/search?q={query}
百度bdhttps://www.baidu.com/s?wd={query}
掘金jjhttps://juejin.cn/search?query={query}

使用方式:

g react hooks          # 在 Google 搜索
gh vuejs/core          # 在 GitHub 搜索
mdn Array.prototype    # 在 MDN 搜索

2.3 文件搜索

快速定位文件:

~ Documents            # 搜索 Documents 目录
/Users/name/code       # 搜索特定路径

过滤搜索:

type:pdf report        # 只搜索 PDF 文件
kind:image vacation    # 只搜索图片
last:7d work           # 搜索最近 7 天的文件

文件操作:

选中文件后按:

  • enter - 打开
  • cmd + enter - 在 Finder 中显示
  • cmd + shift + c - 复制路径
  • cmd + l - 查看文件信息

2.4 计算器与转换

基础计算:

25 * 4 + 10
sqrt(256)
sin(45)

单位转换:

100km to miles
50USD to CNY
200cm to inch

时间计算:

10:30 + 45m
now + 1h
2026-07-06 + 7d

2.5 系统控制

lock          # 锁定屏幕
sleep         # 睡眠
restart       # 重启
shutdown      # 关机
empty trash   # 清空垃圾桶

三、Powerpack 核心功能

3.1 Clipboard History(剪贴板历史)

启用方式:

  1. Preferences → Features → Clipboard History
  2. 勾选 "Keep clipboard history"

使用方式:

  • cmd + shift + c - 打开剪贴板历史
  • 使用方向键选择
  • enter - 粘贴

高级设置:

  • 设置历史记录数量
  • 排除特定应用
  • 设置存储时间

3.2 Snippets(代码片段)

创建 Snippet:

  1. Preferences → Features → Snippets
  2. 点击 "+" 添加
  3. 设置关键字和内容

示例:

关键字内容
;emailyour@email.com
;sigBest regards,\nYour Name
;date{date:YYYY-MM-DD}
;dt{datetime:YYYY-MM-DD HH:mm:ss}

动态 Snippet:

{clipboard}              # 当前剪贴板内容
{date:YYYY-MM-DD}        # 当前日期
{datetime}               # 当前日期时间
{time}                   # 当前时间
{user}                   # 当前用户名
{app}                    # 当前应用名

使用方式:

在任何文本输入框中输入关键字,自动替换为内容。

3.3 Workflow(工作流)

Workflow 是 Alfred 最强大的功能,允许你创建自定义的自动化流程。


四、Workflow 开发入门

4.1 Workflow 结构

一个典型的 Workflow 包含:

Workflow
├── Triggers(触发器)
│   ├── Keyword(关键字触发)
│   ├── Hotkey(快捷键触发)
│   ├── File Filter(文件过滤)
│   └── Clipboard Trigger(剪贴板触发)
├── Actions(动作)
│   ├── Run Script(运行脚本)
│   ├── Open URL(打开 URL)
│   ├── Copy to Clipboard(复制到剪贴板)
│   ├── Show Notification(显示通知)
│   └── Conditional(条件判断)
├── Output(输出)
│   ├── Script Filter(脚本过滤)
│   └── List Filter(列表过滤)
└── Connections(连线)

4.2 创建第一个 Workflow

步骤 1:创建 Workflow

  1. Preferences → Workflows → "+" → "Blank Workflow"
  2. 填写名称、描述、关键字

步骤 2:添加触发器

右键 → Triggers → Keyword

步骤 3:添加动作

右键 → Actions → Run Script

步骤 4:连接

从触发器拖动连线到动作

步骤 5:测试

option + space 输入关键字

4.3 Script Filter

Script Filter 允许你通过脚本动态生成搜索结果:

Python 示例:

python
#!/usr/bin/env python3
import sys
import json

def main():
    query = sys.argv[1] if len(sys.argv) > 1 else ""
    
    items = [
        {
            "uid": "item1",
            "title": "搜索 Google",
            "subtitle": f"搜索: {query}",
            "arg": query,
            "icon": {
                "path": "google.png"
            }
        },
        {
            "uid": "item2",
            "title": "搜索 GitHub",
            "subtitle": f"搜索: {query}",
            "arg": query,
            "icon": {
                "path": "github.png"
            }
        }
    ]
    
    print(json.dumps({"items": items}))

if __name__ == "__main__":
    main()

输出格式:

json
{
  "items": [
    {
      "uid": "唯一标识",
      "title": "显示标题",
      "subtitle": "副标题",
      "arg": "传递给下一个动作的参数",
      "icon": {
        "path": "图标路径"
      },
      "valid": true
    }
  ]
}

4.4 常用动作

Run Script:

bash
#!/bin/bash
echo "Hello, $1"
python
#!/usr/bin/env python3
print("Hello, World")

Open URL:

https://www.google.com/search?q={query}

Copy to Clipboard:

直接复制文本或变量到剪贴板

Show Notification:

title: 任务完成
subtitle: 备份已成功
message: 文件已备份到 ~/backup/

Conditional:

根据条件执行不同的分支

4.5 变量与环境变量

Workflow 变量:

在 Workflow 设置中定义:

{var:WORKFLOW_NAME}    # Workflow 名称
{var:HOME}             # 用户目录

环境变量:

bash
echo $HOME
echo $PATH
echo $USER

自定义变量:

在 Workflow 设置 → Variables 中添加


五、实用 Workflow 推荐

5.1 必备 Workflow

Workflow功能下载地址
Alfred GitHubGitHub 搜索、查看仓库Packal
Dash文档搜索(需安装 Dash)Dash
Spotify Mini PlayerSpotify 控制Packal
Clipboard History增强剪贴板内置
Snippets代码片段内置
Kill Process快速结束进程Packal
Emoji SearchEmoji 搜索Packal
Currency Converter货币转换Packal

5.2 开发者 Workflow

Git Workflow:

python
#!/usr/bin/env python3
import subprocess
import json

def get_git_status():
    try:
        result = subprocess.run(
            ["git", "status", "--short"],
            capture_output=True, text=True
        )
        return result.stdout.strip()
    except:
        return ""

def main():
    status = get_git_status()
    if status:
        items = [{"uid": "git", "title": "Git Status", "subtitle": status}]
    else:
        items = [{"uid": "no-git", "title": "Not in a git repo"}]
    print(json.dumps({"items": items}))

if __name__ == "__main__":
    main()

IP 查询:

bash
#!/bin/bash
curl -s https://ipinfo.io/$1 | python3 -m json.tool

5.3 效率提升 Workflow

快速打开项目:

python
#!/usr/bin/env python3
import os
import json

PROJECTS_DIR = "~/code"

def main():
    items = []
    projects = os.listdir(os.path.expanduser(PROJECTS_DIR))
    
    for project in projects:
        path = os.path.join(os.path.expanduser(PROJECTS_DIR), project)
        if os.path.isdir(path):
            items.append({
                "uid": project,
                "title": project,
                "subtitle": path,
                "arg": path,
                "icon": {
                    "path": "/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/GenericFolderIcon.icns"
                }
            })
    
    print(json.dumps({"items": items}))

if __name__ == "__main__":
    main()

快速搜索文件并打开:

python
#!/usr/bin/env python3
import subprocess
import json

def search_files(query):
    result = subprocess.run(
        ["mdfind", query],
        capture_output=True, text=True
    )
    files = result.stdout.strip().split("\n")[:10]
    return files

def main():
    query = sys.argv[1] if len(sys.argv) > 1 else ""
    files = search_files(query)
    
    items = []
    for f in files:
        if f:
            items.append({
                "uid": f,
                "title": os.path.basename(f),
                "subtitle": f,
                "arg": f
            })
    
    print(json.dumps({"items": items}))

if __name__ == "__main__":
    main()

六、高级技巧

6.1 快捷键设置

全局快捷键:

在 Preferences → Features → Hotkeys 中设置:

快捷键功能
cmd + shift + c剪贴板历史
cmd + shift + v粘贴上次剪贴板
cmd + shift + sSnippets
cmd + shift + d字典

Workflow 快捷键:

在 Workflow 中添加 Hotkey 触发器

6.2 自定义主题

下载主题:

  1. https://www.alfredapp.com/themes/
  2. Packal 社区

创建自定义主题:

  1. Preferences → Appearance → Themes
  2. 选择一个主题 → "Duplicate"
  3. 自定义颜色、字体、背景

推荐主题:

  • Alfred 默认主题 - 简洁
  • Yosemite - 扁平化
  • Dark - 深色模式
  • Nord - 北欧风格

6.3 调试技巧

查看日志:

  1. 在 Workflow 编辑器中点击右上角的 "bug" 图标
  2. 查看脚本输出

测试脚本:

bash
cd /path/to/workflow
python3 script.py "test query"

使用 Debug 动作:

添加 "Debug" 动作到 Workflow 中查看变量值

6.4 性能优化

减少脚本执行时间:

  • 缓存结果
  • 使用快速语言(Python 比 Shell 快)
  • 避免不必要的 API 调用

优化搜索:

  • 使用 mdfind 代替 find
  • 设置搜索范围
  • 使用文件类型过滤

七、自动化脚本示例

7.1 Python 脚本

天气查询:

python
#!/usr/bin/env python3
import sys
import json
import requests

def get_weather(city):
    url = f"https://api.openweathermap.org/data/2.5/weather?q={city}&appid=YOUR_API_KEY&units=metric"
    response = requests.get(url)
    data = response.json()
    
    if response.status_code == 200:
        temp = data["main"]["temp"]
        desc = data["weather"][0]["description"]
        return f"{city}: {temp}°C, {desc}"
    else:
        return "City not found"

def main():
    query = sys.argv[1] if len(sys.argv) > 1 else "Beijing"
    weather = get_weather(query)
    
    items = [{
        "uid": "weather",
        "title": f"Weather in {query}",
        "subtitle": weather,
        "arg": weather
    }]
    
    print(json.dumps({"items": items}))

if __name__ == "__main__":
    main()

7.2 Shell 脚本

快速备份:

bash
#!/bin/bash
SOURCE="$1"
DEST="$HOME/backup/$(date +%Y%m%d)"

mkdir -p "$DEST"
cp -r "$SOURCE" "$DEST"

echo "Backup completed: $DEST"

7.3 AppleScript

控制 Safari:

applescript
tell application "Safari"
    activate
    open location "https://www.google.com"
end tell

八、效率提升建议

8.1 常用操作习惯

操作Alfred 方式传统方式
打开应用option + space → 输入应用名Launchpad / Dock
搜索文件option + space → 输入文件名Finder 搜索
计算option + space → 输入计算式打开计算器
网页搜索g query打开浏览器 → 输入
复制历史cmd + shift + c重新输入

8.2 学习路径

第一周:基础功能

  • 掌握应用启动、文件搜索
  • 学会自定义搜索
  • 设置剪贴板历史

第二周:Snippets

  • 创建常用代码片段
  • 学会动态 Snippet

第三周:Workflow

  • 创建简单的 Workflow
  • 学会 Script Filter

第四周:进阶

  • 开发复杂 Workflow
  • 学习调试和优化

8.3 资源推荐

官方文档:

社区资源:


九、常用命令速查

bash
# 基础操作
option + space      # 呼出 Alfred
enter               # 打开选中项
cmd + enter         # 在 Finder 中显示
cmd + l             # 查看文件信息
cmd + shift + c     # 剪贴板历史

# 文件搜索
type:pdf report     # 搜索 PDF
kind:image vacation # 搜索图片
last:7d work        # 最近 7 天

# 计算与转换
100km to miles      # 单位转换
10:30 + 45m         # 时间计算
sqrt(256)           # 计算

# 系统控制
lock                # 锁定屏幕
sleep               # 睡眠
restart             # 重启
empty trash         # 清空垃圾桶

# 自定义搜索
g query             # Google
gh query            # GitHub
mdn query           # MDN

十、总结

Alfred 是 Mac 用户的效率神器:

  1. 基础功能:替代 Spotlight,更强大的搜索和计算
  2. Powerpack:剪贴板历史、Snippets、Workflow
  3. Workflow:无限可能的自动化平台
  4. 社区生态:丰富的 Workflow 资源
  5. 可定制性:完全按照自己的习惯配置

⚡ 效率工具的价值在于使用,而不是拥有。花时间学习 Alfred,让它成为你日常工作的得力助手。


相关文章推荐: