Mac AppleScript 自动完成按键
本人用AppleScript成功实现了打开锐捷app,并且在用户验证框输入我的用户密码,然后强制退出锐捷。(至于为什么这么做呢?用校园网的痛苦,一言难尽啊!)
学习以下内容,首先你要自行百度资料来学习一点内容,学会使用实用工具里面的 脚本编辑器 和 Automator。实用工具,确实很实用啊!
--脚本完成组合键按下 by Ficow
tell application "System Events"
key code using {command down, option down}
end tell -- --这个符号是注释符号,(**)这个也是注释符号,类似于C语言里面的//和/**/
-- key code 53的意思按下Esc键,53的含义见下面的列表
-- using {} 花括号部分按下的按键和前面的按键事件一起作用
-- command down, option down的含义是按下command和option
-- 所以这个脚本的作用就是启动强制退出窗口(command+option+Esc) (*
apple key code list(后面会用到这个清单!): 0x00 ANSI_A
0x01 ANSI_S
0x02 ANSI_D
0x03 ANSI_F
0x04 ANSI_H
0x05 ANSI_G
0x06 ANSI_Z
0x07 ANSI_X
0x08 ANSI_C
0x09 ANSI_V
0x0A ISO_Section
0x0B ANSI_B
0x0C ANSI_Q
0x0D ANSI_W
0x0E ANSI_E
0x0F ANSI_R
0x10 ANSI_Y
0x11 ANSI_T
0x12 ANSI_1
0x13 ANSI_2
0x14 ANSI_3
0x15 ANSI_4
0x16 ANSI_6
0x17 ANSI_5
0x18 ANSI_Equal
0x19 ANSI_9
0x1A ANSI_7
0x1B ANSI_Minus
0x1C ANSI_8
0x1D ANSI_0
0x1E ANSI_RightBracket
0x1F ANSI_O
0x20 ANSI_U
0x21 ANSI_LeftBracket
0x22 ANSI_I
0x23 ANSI_P
0x24 Return
0x25 ANSI_L
0x26 ANSI_J
0x27 ANSI_Quote
0x28 ANSI_K
0x29 ANSI_Semicolon
0x2A ANSI_Backslash
0x2B ANSI_Comma
0x2C ANSI_Slash
0x2D ANSI_N
0x2E ANSI_M
0x2F ANSI_Period
0x30 Tab
0x31 Space
0x32 ANSI_Grave
0x33 Delete
0x35 Escape
0x37 Command
0x38 Shift
0x39 CapsLock
0x3A Option
0x3B Control
0x3C RightShift
0x3D RightOption
0x3E RightControl
0x3F Function
0x40 F17
0x41 ANSI_KeypadDecimal
0x43 ANSI_KeypadMultiply
0x45 ANSI_KeypadPlus
0x47 ANSI_KeypadClear
0x48 VolumeUp
0x49 VolumeDown
0x4A Mute
0x4B ANSI_KeypadDivide
0x4C ANSI_KeypadEnter
0x4E ANSI_KeypadMinus
0x4F F18
0x50 F19
0x51 ANSI_KeypadEquals
0x52 ANSI_Keypad0
0x53 ANSI_Keypad1
0x54 ANSI_Keypad2
0x55 ANSI_Keypad3
0x56 ANSI_Keypad4
0x57 ANSI_Keypad5
0x58 ANSI_Keypad6
0x59 ANSI_Keypad7
0x5A F20
0x5B ANSI_Keypad8
0x5C ANSI_Keypad9
0x5D JIS_Yen
0x5E JIS_Underscore
0x5F JIS_KeypadComma
0x60 F5
0x61 F6
0x62 F7
0x63 F3
0x64 F8
0x65 F9
0x66 JIS_Eisu
0x67 F11
0x68 JIS_Kana
0x69 F13
0x6A F16
0x6B F14
0x6D F10
0x6F F12
0x71 F15
0x72 Help
0x73 Home
0x74 PageUp
0x75 ForwardDelete
0x76 F4
0x77 End
0x78 F2
0x79 PageDown
0x7A F1
0x7B LeftArrow
0x7C RightArrow
0x7D DownArrow
0x7E UpArrow
*)
这里附上我自己制作的Automator工作流程:
首先在Automator,添加工作流程(多次试验之后,我觉得还是工作流程好用一点)。
打开Automator,新建-工作流程,如图:

然后,添加启动锐捷的功能(双击开启应用程序,右边就会出现可以配置的功能块):

启动锐捷后需要输入自己的用户密码,所以紧接着就插入完成按键按下的脚本,完成密码的自动输入:

your script goes here,好的,就在这下面开始写输入密码的脚本吧:
on run {input, parameters}
(* Your script goes here *)
delay --延时1S后执行后面的内容
tell application "System Events"
key code --这里做示范,只输入了小写的s,code编码请参照key code list
key code --输入了回车,以确认密码输入
end tell
delay --延时10S,等待锐捷启动并自动登录完毕
return input
end run
添加完毕后,你可以点击运行检验一下当前编写的脚本的运行效果是否符合你的要求,
在运行之前先检查一下语法有没有错误,以防止运行发生意外。
按图中标注的顺序点击按钮即可:

接下来,添加下一个脚本,输入终结锐捷的脚本代码:
on run {input, parameters}
(* Your script goes here *)
beep --让Mac发出声音
tell application "System Events"
key code using {command down, option down} --按下打开强制退出框的组合键
delay
key code --确定选择
delay
key code --确定退出锐捷
end tell --tell和end tell需要配对使用
return input
end run
最后,把这个工作流程保存起来。需要用的时候,双击打开工作流程,然后点击Automator里的运行即可。

Automator功能很棒的,有些人甚至它用来完成图片的批量格式转换等更实用的功能!
百度Automator,更多惊喜等着你哦!
可参考资料:
http://www.guokr.com/blog/792617/
http://apple.stackexchange.com/questions/36943/how-do-i-automate-a-key-press-in-applescript
原创文章,转载请注明出处,谢谢!
Mac AppleScript 自动完成按键的更多相关文章
- 原创:Mac AppleScript 自动登录两个QQ
前提,已有登录过的账号,且没有设置为自动登录 tell application "QQ" activate tell application "System Events ...
- 适用于Mac 的自动补丁管理软件
适用于Mac 的自动补丁管理软件 ManageEngine Desktop Central 的功能越来越神奇.系统管理员现在可以使用 Desktop Central 管理异构网络.即使是最复杂的任务, ...
- Linux根据MAC地址自动设置IP
Linux根据MAC地址自动设置IP #!/bin/sh #============config============ route_defa=60.12.70.65 addr_ip= link_ma ...
- Mac Item2自动远程连接服务器
Mac Item2自动远程连接服务器 1.编写脚本 vi test #!/usr/bin/expect set PORT 端口 set HOST ip set USER root set PASSWO ...
- 在mac中自动保存git用户名与密码如此简单
之前为了实现在Windows中自动保存git用户名与密码,写过一篇博客终于解决“Git Windows客户端保存用户名与密码”的问题,需要进行一堆配置. 而在Mac OS X中这个操作竟然如此简单.只 ...
- java的mac自动化-自动运行java程序
本文旨在帮助读者介绍,如果一个测试工程师拿到了mac本,该如何在本地自动运行java代码 首先如图所示写下如下一段代码 package zlr;import org.junit.Test;public ...
- 关闭 Mac 拼写自动纠正与横线转换
如果你是个程序员, 如果你恰好用 mac 自带的 notes 来做笔记, 很大可能性, 你会在里面贴代码, 但是, Mac 的拼写检查和自动纠正功能,会把代码变成你不想要的样子, 比如, 它会为你首字 ...
- mac securecrt自动保存密码
一.问题描述 mac有自带的终端,可以运行ssl和sftp,但是目录操作,文件操作和文件上传是分开的,很不方便,并且文件上传命令需要文件的全路路径. 使用securecrt能方便的解决上述的问题,并且 ...
- Mac Tab自动补全键
最近入手一个Mac(Mac 2019版本),在使用终端时,发现不能使用Tab键自动补全代码,网络搜寻下,发现这里有个方法,记录下,免得自己忘记: 1 / 首先找到这个图标 2 / 输入命令 nano ...
随机推荐
- 配置 PHP 的 Session 存储到 Redis
PHP 的会话默认是以文件的形式存在的,可以配置到 NoSQL 中,即提高了访问速度,又能很好地实现会话共享,,,爽歪歪! 配置方式如下: 方法一:修改 php.ini 的设置 session.sav ...
- centos7 打开mysql 3306端口并 设置外部访问
mysql安装后默认是localhost访问,如果需要外部访问可以设置一个新的账号把host改为%,意味着所有ip均可以访问 grant all privileges on *.* to 'outUs ...
- svn检出项目
第一步: 第二步: 第三步: 第四步: 第五步: 填写项目名称 第六步: 选择路径 第七步:
- flex实验总结
1.父元素 .box{ display:flex; flex-direction: column;//铺满垂直排列 flex-direction: column-reverse;//铺满垂直反向排列 ...
- js 数组,字符串,json互相转换
数组转字符串 var arr = [1,2,3,4,'巴德','merge']; var str = arr.join(','); console.log(str); // 1,2,3,4,巴德,me ...
- CSS标签
CSS类选择器被大量使用了 class = cssname
- LruCache算法原理及实现
LruCache算法原理及实现 LruCache算法原理 LRU为Least Recently Used的缩写,意思也就是近期最少使用算法.LruCache将LinkedHashMap的顺序设置为LR ...
- ASCII码、Unicode码 转中文
ASCII码.Unicode码 转中文 在最近工作中遇到了一些汉字编码转换的处理,可以通过正则表达式及转换字符来实现转成中文 Unicode转换示例 通常为10位编码, 通过digit参数传入 pri ...
- 虚拟机安装windows服务出现无法打开内核设备“\\.Global\vmx86”
解决方法: 在cmd下依次输入net start vmci,net start vmx86,net start VMnetuserif三个命令即可
- 安装VS2015历险记
最近,因为一些需求,需要在家里的笔记本上安装VS2015.本来以为一件很容易的一件事,发现做起来遇到了很多坑. 首先,下载VS2015,这就花费了两三个小时,安装包太大了.下载完,安装.安装不成功,报 ...