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 ...
随机推荐
- Ajax详解
一:什么是Ajax AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法 ...
- 关于TCP中的MSS
MSS 是TCP选项中最经常出现,也是最早出现的选项.MSS选项占4byte.MSS是每一个TCP报文段中数据字段的最大长度,注意:只是数据部分的字段,不包括TCP的头部.TCP在三次握手中,每一方都 ...
- 用VC2010以上版本编译可以在低版本XP和2003的运行程序的方法
2013-09-17 作者:佚名 来源:本站整理 浏览:2001 评论:1 一直以来倍受此事困拢,vc2010以上版本编译出的exe或dll总是会引用kernel32.dll的En ...
- 11个审查Linux是否被入侵的方法
11个审查Linux是否被入侵的方法 一.检查系统日志 lastb命令 检查系统错误登陆日志,统计IP重试次数 二.检查系统用户 1.cat /etc/passwd 查看是否有异常的系统用户 2.gr ...
- JAVA输入输出流
概述: 各种流类型(类和抽象类)都位于位于java.io包中,各种流都分别继承一下四种抽象流中的一种: 类型 字节流 字符流 输入流 InputStream Reader 输出流 OutputStre ...
- getchar()(转)
出处:http://www.cnblogs.com/jiangjun/archive/2012/05/16/2503676.html 1.从缓冲区读走一个字符,相当于清除缓冲区 2.前面的scanf( ...
- 排序算法总结第二弹----冒泡排序---javascript描述
上篇博文总结了选择排序,这篇来看冒泡排序,接上篇. 冒泡排序思想:若是正再将一组数据升序排序, 第一趟:比较相邻的数据,当左侧值大于右侧值将他们进行交换,将较小值向前浮动,大值向后冒泡,直至比较到最后 ...
- 大端字节序&小端字节序(网络字节序&主机字节序)
大端字节序:整数的高位字节存储在内存的低地址处,低字节存储在内存的高地址处. 小端字节序:整数的高位字节存储在内存的高地址处,低字节存储在内存的低地址处. 一般pc大多采用小端字节序,也称为主机字节序 ...
- nginx提示413 Request Entity Too Large解决方法
## 找到nginx.conf文件 一般在`/etc/nginx/`下 ## 在http {}内天加如下一行 client_max_body_size 8M; ## 重启nginx nginx -s ...
- css-关于文本
1. 使用 text-overflow:ellipsis; 超出部分会变成省略号 http://www.w3school.com.cn/tiy/t.asp?f=css3_text-overflow 1 ...