首先来总结一下这三种脚本分别最适合的方向: AutoHotKey:桌面交互自动化

Powershell:系统管理与复杂自动化

VBSript:老旧系统兼容与极简操作

AutoHotKey#

最终目的:使用快捷键来简化人们的手动操作(如鼠标点击,键盘输入)

使用方式

首先下载AutoHotKey到我们的电脑上。

在本地按照AutoHotKey的语法编写完ahk脚本文件后,双击后,启动脚本文件,其加载后常驻后台,热键随时可用,几乎零延迟

image

然后就可以使用快捷键来使用该脚本文件编写的任务。

具体任务:

  1. 可以自定义全局热键来实现任务(最常用的用途)。

例如:我编写了一个使用快捷键“ctrl+J”即可弹窗展来示目标任务的.ahk文件,编写保存完该脚本后,直接双击该脚本文件,然后可以在全局使用快捷键“ctrl+J”来调用脚本文件实现任务。

image

下面的所有任务,也都是编写脚本定义一个来执行该脚本的快捷键;双击该脚本后,该脚本就会常驻后台。然后使用快捷键执行任务。

  1. 重复操作自动化

例如:自动填写网页表单(固定输入账号 / 密码);游戏 / 办公中重复点击某位置(也是使用自定义的快捷键来调用)

  1. 窗口精细化控制

例如:一键关闭所有弹窗;指定窗口置顶 / 隐藏 / 调整大小;多窗口分屏排列(如左边浏览器、右边记事本)。

  1. 轻量 GUI 小工具开发

例如:编写无编译的快捷启动面板(点击按钮打开不同工具)。

image

  1. 系统轻量操作辅助

例如:屏蔽键盘某按键;修改鼠标滚轮速度;自动切换输入法。

PowerShell#

使用方式:

无需下载,windows自带,在powershell终端输入命令使用,或者将整个文件保存为.ps1然后在终端使用./name.ps1命令来执行该powershell文件。

  1. 文件操作(类似于Linux中的文件操作)

例如:

  • 找出桌面最近7天修改的文件并按大小排序:ls ~/Desktop -File -Recurse | ? { $_.LastWriteTime -gt (Get-Date).AddDays(-7) } | sort Length -Descending

image

  • 批量改文件的后缀名

  • 快速查看文件的内容

    • 使用cat命令查看文件中固定行数的内容

    • 找出所有 .ps1 脚本里包含 “api_key” 的行:

    sls *.ps1 -Pattern "api_key" -List

  1. 系统信息的快速查询(比图形化操作更快速)
  • 测试 HTTPS 是否通:tnc ``google.com`` -Port 443

image

  • 吃cpu前10的进程:Get-Process | sort CPU -Descending | Select -First 10

image

  1. 与网络与下载相关的
  • 下载图片或文件 curl "``https://example.com/image.jpg``" -OutFile "D:\pic.jpg"(将豆包官方的头像图片,下载到本地路径)

image

  • 调用API–下面这个例子是调用公开的API从而获得信息。

image

  1. 定时任务:
  • 每5秒看一次进程是否启动

while ($true) { if (Get-Process notepad -EA 0) { "Notepad 已经开了!" } ; sleep 5 }

  1. 输出美化/结果留存(让输出结果更好看、将输出记录保存)
  • 展示cpu使用排行(使用一个新建窗口来展示记录):Get-Process | Select Name,Id,CPU,WorkingSet | Sort CPU -Desc | Out-GridView -Title "Top Processes"

image

VBScript#

VBScript 脚本(.vbs 文件)是 Windows 内置的轻量脚本,无额外依赖,但微软已弃用,推荐迁移到powershell,仅适合遗留场景。

使用方式:

无需下载,在使用之前需要确保你的windows电脑已经开启该功能。编写完.vbs文件后(注意编码方式选用ANSI不要选择UTF-8,否则会编译报错),直接双击该文件,即可运行。

如下面的hello.vbs文件双击运行后,会自动跳转到bilibili的官网。

image

VBS的最常见的日常用途:

  1. 弹出带输入框的问候 + 当前时间(最经典的“Hello World”升级版) MsgBox "今天是 " & Date & vbCrLf & "现在时间:" & Time & vbCrLf & "欢迎回来!", 64, "每日问候"

image

  1. 一键清空回收站(很多人桌面常放这个)

  2. 给某个网站创建“快捷方式”(网站跳转,点击后直接跳转到该网页):就是我们在最上面我首先说明的Bilibili网站跳转。

  3. 关机倒计时。

  4. 批量重命名文件夹内的文件