AutoHotkey:在 Windows 上自动执行任务的完美工具

已发表: 2020-12-09

您是否更喜欢将计算机上的平凡和重复性任务自动化以简化您的工作流程? 如果你这样做了,你就拥有了 macOS 上最好的自动化工具之一 Automator,它允许你创建脚本来自动化你在 Mac 上的任务。 但是,如果你属于另一端——使用 Windows 机器——在 Windows 上最接近 Automator 的是AutoHotkeyAHK

AHK 是满足您所有自动化需求的一站式工具。 您可以使用它来创建自定义脚本和快捷方式、重新映射键,甚至为不同的操作创建宏。 因此,如果您计划在 Windows 上自动执行任务并且没有使用 AutoHotkey,那么这里有一个指南可以帮助您入门并使用该工具来简化您的工作流程。

AutoHotkey (AHK) Windows automation

在自动化方面,无论是在 Linux、macOS 还是 Windows 上,都有大量内置或第三方自动化工具来帮助您创建宏、自定义脚本和快捷方式。 但是,并非所有这些都提供对不同系统操作以及第三方应用程序操作的精细控制。 这正是 AutoHotkey 发挥作用的地方。

目录

什么是自动热键?

AutoHotkey 是一个免费的开源工具,专门用于 Windows 操作系统,它允许您自动化机器上的许多操作。 它于 2003 年发布。当时,它最初是一个宏和键盘快捷键创建工具,提供自动执行重复任务的能力。 但多年来,它经历了各种变化,最终成为现在的 Windows 一站式自动化工具。

AutoHotkey Windows scripting
用于导入 Python 库和模块的 AutoHotkey 脚本

与其他一些自动化和自定义快捷方式创建工具不同,这些工具提供图形界面 (GUI) 以使该工具对初学者友好且易于使用,AutoHotkey 严格来说是一个命令行 (CLI) 工具。 这意味着您不会获得带有预先布置好的按钮和组件以与之交互的图形界面。 相反,您拥有的是一个完全基于命令的界面,它通过命令接受输入并相应地执行功能。

虽然这种方法有很多优点,但也有一些缺点,因为与 GUI 工具不同,它的 CLI 等效项不是最用户友好的,因此,它需要用户对相关知识有基本的了解-如何能够充分利用它的潜力。

如何安装 AutoHotkey?

现在您已经了解了 AutoHotKey 是什么,开始使用该工具需要做的第一件事就是下载并将其安装在您的机器上。 就是这样。

1. 前往 AutoHotkey 的官方网站并在您的计算机上下载 AutoHotkey。

2. 接下来,运行安装程序并单击安装对话框。

3. 当出现安装类型选择窗口时,选择快速安装:如果您想使用默认配置安装该工具,或者选择自定义安装:如果您需要更多地控制该工具并希望根据您的偏好配置安装。

如何使用自动热键?

在您的 Windows 计算机上安装 AutoHotKey 后,设置窗口会显示一些选项。 您可以选择从此处(暂时)运行 AutoHotkey,也可以单击查看教程以获取 AutoHotkey 的完整文档。 如果您计划为自动化任务创建自定义脚本,本文档可以帮助您了解脚本语法和所有基本元素。

要使用 AutoHotkey,请确保该工具在后台运行。 你可以通过进入开始菜单并从那里运行 AutoHotkey 来做到这一点。 一旦该工具启动并运行,您现在有两种不同的方法来在您的计算机上自动执行任务:您可以从头开始为您想要自动化的操作创建自己的自定义脚本,或者您可以找到并下载脚本(由其他人创建) 在您的机器上运行它们。

A premade AutoHotkey script
预制 AutoHotkey 脚本,用于将应用程序最小化到托盘菜单

如果您刚刚开始使用 AutoHotkey,可以理解您不具备创建自定义脚本所需的全面的脚本语言知识。 因此,使用预制脚本(由其他人创建)是一个安全的起点,更不用说,它还可以帮助您了解和了解脚本在 AutoHotkey 上的工作原理,以便您最终可以自己创建脚本。

在寻找可立即运行的脚本时,Internet 上的一些源(源 1、源 2)提供了用于不同任务的各种脚本的集合,您可以下载这些脚本并直接在 Windows 计算机上运行。 此外,您还可以在 AutoHotkey 的官方网站和论坛上找到一些预制脚本。 此外,如果您遇到问题,您还可以在论坛上获得您的查询的答案。 [注意:下载脚本时,请确保文件以 .ahk 扩展名结尾。 ]

下载文件后,您可以对脚本执行一些不同的操作。 只需右键单击文件并从列表中选择一个选项。 基本上,有三个有用的功能:运行脚本编译脚本编辑脚本

Run-Compile-Edit AutoHotkey script

Run Script ,顾名思义,就是执行一个脚本。 如果您想将此功能映射到一个键,您可以这样做以简化工作流程。 另一方面,编译脚本可帮助您编译脚本并将其与可执行文件捆绑在一起,以将脚本转换为可执行 (.exe) 文件。 编辑脚本选项适用于您需要查看代码或想要更改脚本时。

当您运行脚本时,它会移动到系统托盘并在后台运行。 有时,当您需要暂停脚本、停止脚本或暂停热键时,您可以通过右键单击系统托盘中的“ H ”图标并从那里选择合适的选项来执行此操作。 更改脚本时要记住的一点是,每次编辑脚本时,都需要重新加载它以使更改生效。

Reload-Pause-Suspend AutoHotkey script

另一方面,如果您打算自己创建自定义脚本,请右键单击桌面并选择New > AutoHotkey Script 。 为文件命名并确保它以 .ahk 扩展名结尾。 现在,右键单击它并从选项列表中选择编辑脚本。 在文本编辑器中打开文件后,开始添加代码。 完成后,请确保保存更改。

AutoHotkey 如何工作,以及如何创建自定义脚本?

简单来说,AutoHotkey 自己不​​会做任何事情。 相反,它依赖于脚本(包含执行操作的指令的程序)来自动执行任务。 使用文本编辑器编写脚本。 您甚至可以将其写入 Windows 预装的记事本应用程序中。 或者,如果您更喜欢语法高亮,您可以使用任何流行的文本编辑器,如 Emacs、Vim、Sublime Text、Notepad++ 或 SciTE4AutoHotkey 来编写脚本。 但是,如果您不熟悉文本编辑器,您可以使用 Notepad++,这是一个非常基本的编辑器(并且相对更容易使用),或者您可以获得 SciTE4AutoHotkey 编辑器,它是 SciTE 编辑器的自定义版本,专为编写 AutoHotkey 脚本而设计——尽管它确实有一个学习曲线。

AutoHotkey 脚本可以包含一个或一组不同的操作。 理想情况下,您添加一个热键并指定要使用它执行的操作。 但是,对于需要多项操作的任务,您还可以为热键指定多个操作。

Writing a custom AutoHotkey script
AutoHotkey 脚本对剪贴板中的内容进行 Google 搜索

说到脚本,该工具理解 AutoHotkey 脚本语言,它与任何其他编程语言一样,构成变量、对象、函数、控制流语句等各种元素。当以一种内聚的方式组合在一起时,这些元素可以帮助您执行您想要的操作,进而自动执行您的任务。

无需赘述,您需要牢记一些基本元素或功能才能开始使用自定义脚本。 这些包括:

1. 热键 -单个键或组合键,您可以绑定到操作以快速执行它。

例如1:
^c: :
Run, chrome.exe

例如 2:
^h::
{
Send “Hello,” {enter}
Send “How have you been?”
}

翻译 1:当您按下 control + c 组合键时运行 Chrome 的操作。

翻译 2:当你按下 control + h 键并输入 Hello, 你好吗?

enter 一词放在括号内,因为我们不想将其添加为文本。 相反,我们希望它注册回车键并在新行开始下一个句子。

2. Hotstrings:扩展缩写的功能,类似于自动替换功能。

例如:
::omw::On my way{!}

翻译:用完整形式扩展 omw 缩写。 感叹号放在括号内,以将其注册为感叹号,而不是 Alt 键。

您必须知道的基本符号(或修饰符):

  • #窗口
  • Alt
  • ^控制
  • +Shift
  • && 符号(用于组合两个组件)

3. 发送击键:发送是一个 AutoHotkey 功能,允许您捕获输入(键入)的键并将其发送到程序。 因此,如果您想模拟按键,此功能可帮助您实现这一目标。 您可以将各种参数发送到程序。 根据您要发送的内容,有一些方法可以帮助您。

例如:
Send “!fs”

翻译:选择文件 > 保存菜单。

基本符号及其功能:

  • Alt
  • +Shift
  • ^控制
  • #窗口

4.运行程序和打开网站:运行是最有用的功能之一,它可以让你运行程序或打开URL(网站)。 对于需要您打开应用程序或网站的脚本,此功能就是您所需要的。 此外,您可以将功能绑定到键以创建热键并执行操作。

例如1:打开一个网站
^g::
Run, “https://www.google.com"

例如 2:运行应用程序
^n::
Run, “notepad.exe”

翻译 1:在您的默认浏览器中打开 Google 搜索。
翻译 2:运行记事本应用程序。

5. 命令和函数:命令函数是使用 AutoHotkey 编写脚本时最关键的两个元素,这使得向程序发出指令更容易。 一方面,您有一些命令可以接受简单的指令并解决问题,而另一方面,有些功能可以帮助您为程序提供复杂的指令。

句法:

  • 命令,参数1,参数2,参数3
  • 功能(参数1,参数2,参数3)

基本上,括号将命令与函数分开。

例如: Run, chrome.exe

6. 杂项:除了命令、函数和发送击键等内置函数之外,AutoHotkey 还允许您在脚本中使用大量不同的功能。 例如,您可以使用变量来存储程序的输出,使用对象来存储程序的状态,使用控制流语句来相应地修改程序的输入、输出和动作,使用数学函数、鼠标函数、监控功能、文件系统功能等。 基本上,您可以使用其他编程语言完成的所有操作(在一定程度上)都可以使用 AutoHotkey 完成。

AutoHotkey 有哪些用例?

AutoHotkey 的众多可能用例之一是您可以创建脚本来添加某些代码行。 这样,您可以节省一些时间和精力,否则您会花费在一遍又一遍地编写重复的代码行上。 如果您使用 Python 或任何其他编程语言,您可以创建一个热字串来填充已定义的代码行。

例如,如果您使用 Python,您可能需要导入某些库和模块。 在这种情况下,以下代码片段可以帮助您节省一些时间并简化您的工作流程。

例如:
::impl1::
Send "import tkinter" {enter}
Send "import numpy as np" {enter}
Send "import random" {enter}

翻译:只要您在文本编辑器中键入 impl1 并点击选项卡,上面的热字符串就会在双引号之间写下一行,一个在另一个下面。 如前所述,括号内的单词 enter 用于换行。 所以你基本上得到的是以下内容:
import tkinter
import numpy as np
import random

同样,如果您需要在 CSS 中编写多个样式代码,您可以使用需要输入的已声明行集的热字符串词。

Custom AutoHotkey script to clean Recycle Bin
自定义 AutoHotkey 脚本来清理回收站

除了用于编码之外,您还可以使用 AutoHotkey 脚本来启动您经常在计算机上使用的某些应用程序或网站。 您甚至可以将键绑定到不同应用程序中的某些功能,以快速执行它们并节省一些额外的步骤。 此外,AutoHotkey 的另一个有用应用程序是将功能键或特殊键(CapsLock、Insert、Esc 等)重新用于帮助您触发所需操作的东西。

最终,当您对脚本编写充满信心时,您可以创建一个脚本,在 Internet 上执行快速(Google)查找,以查找剪贴板中的任何内容。 这样,您无需打开 Web 浏览器并手动搜索您的查询。 同样,如果您厌倦了手动清除回收站以释放存储空间,您还可以创建一个脚本来立即为您清除回收站。

不用说,一旦你掌握了脚本语言的窍门,你几乎可以用 AutoHotkey 以更有效的方式实现你认为的任何功能。