Questions tagged «applescript»

AppleScript是macOS中的专有编程语言,用于控制和与应用程序交换数据。


1
如何在AppleScript中自动进行按键操作?
是否可以在Mozilla Firefox,Google Chrome或Safari中自动按键(例如“ a”或“ <”)(按此顺序)?我想使Mozilla Firefox中的“ a”按键自动执行每秒100次x。用x为1秒和每次按键随机选择的10秒之间的值。哪些Applescript可以解决问题? 另外,在哪里可以找到键盘每个键的所有代码列表?
81 lion  mac  applescript 


2
从bash脚本运行AppleScript
如果我想从bash脚本中运行AppleScript,则可以调用包含我需要执行的命令列表的文件。 #!/bin/bash {some commands} osascript file.scpt {other commands} 但是,如果我想运行需要从bash中依次运行的命令,该怎么办? 一个例子是 #!/bin/bash echo echo This will open Google Chrome in Kiosk mode osascript -e "tell application \"Google Chrome\"" osascript -e "activate" osascript -e "tell application \"System Events\"" osascript -e "key down {command}" osascript -e "key down {shift}" osascript -e "keystroke \"f\"" …


3
Finder中“正在获取...”行为优胜美地中的“打开方式”菜单
我不知道其他人是否在优胜美地注意到了这一点: 当Finder中的文件处于焦点位置时,将光标移动到“打开方式”条目时,无论是从上下文菜单还是菜单栏->“文件”,都会出现“正在获取...”子条目。 片刻之后,像以前的OS X版本一样,出现了通常的可疑对象。 我认为这种行为应该有所改善。由于/Application/***.app/Contents/Info.plist是实时获取的,因此用户不再需要重置LaunchServices即可显示相关更改。这是我的推测。 但是,这给我带来了问题。我通过applescript或BetterTouchTool创建键盘快捷方式,以调用菜单栏->文件->打开方式->某些应用程序。 这样,我对FN + SHIFT + 1进行了编程,以使用TextMate,FN + SHIFT + 2 for Writer Pro等打开文件。 1)需要将光标放在“打开方式”上以触发提取,以及2)提取延迟会导致我的脚本无效。 我可以通过以下方法验证此理论:1)右键单击文件,1)将鼠标悬停在“打开方式”条目上,3)等待子菜单获取,4)单击上下文菜单之外使其消失,5)并调用键盘快捷键。 并且快捷方式有效。 所以这是我的问题: 1)显然,我可以恢复到优胜美地之前的行为吗? 2)有没有人有聪明的方法来干净高效地按需打开带有多个应用程序的文件类型? 更新: 到目前为止,我有一个解决方法,即创建一个Automator服务。这是TextMate的示例: 我可以通过1)菜单栏-> Finder->服务->使用TextMate打开,2)上下文菜单的顶层或3)键盘快捷键(如果我选择)来立即运行。 这有两个警告: 1)接收到服务中的项目必须尽可能宽泛地定义,例如文件和文件夹。Finder无法将例如.plist文件识别为文档。如果将服务设置为仅接收文档,则当您想在.plist文件中使用“ 打开时使用TextMate”将不会显示。 2)由于(1),此菜单项显示在Finder中的每个项目上。如果只有一个或两个自定义条目,那么这是无害的。如果有六个或七个,这组项目将接管上下文菜单。


4
如何将AppleScript文件制作为Mac App?
我有一个Applescript,它只是打开一个对话框,要求用户输入并运行终端命令,然后吐出答案。它可以在AppleScript编辑器中很好地工作,但是我正在尝试找出如何将该脚本文件和一个图标打包在一起以制作Mac App供我个人使用的方法。的想法。

3
如何从电影中间删除其中的一部分?
Quicktime Player帮助: 使用QuickTime Player,您可以快速删除电影或电影剪辑的开头或结尾的一部分,使其更短或删除不需要的内容。 我想删除从电影的03:08开始到03:49结束的那部分,最好通过如下的applescript删除: tell application "QuickTime Player" activate trim document 1 from 0 to (4 * 60 + 41.75) end tell 我很确定QT PRO可以做到。

12
如何在OS X上检索当前的瓦数信息?
有没有办法在OS X Snow Leopard上检索当前的电量使用信息?我正在使用2010年中的iMac,因此我不仅在寻找与电池相关的应用。 OS X甚至监视电源使用情况吗?我是否需要在电源线和插座之间使用外部读取器? 我对基于命令行/ applescript的解决方案最感兴趣,以获取更方便的日志记录和统计信息,但我愿意接受替代方案。 这两个答案(@ bmike和@ michaelmichael)无疑都是正确的。这里的元问题是PSU上已经有任何传感器/读取器,其工作方式类似于“千瓦特”的工作方式。我认为答案是“否”。 我知道,这可能只是梦dream以求的事情,但是板载电表将是计算机大喊大叫的理想选择:“看看我有多环保;只用这些电!” 啊! @ Kerri Shotts的建议iStat菜单3 确实可以从某个传感器获取瓦数读数,以及伏特和安培状态。仪表在那里,但是我如何以编程方式访问它们呢? 赏金!将获得可靠的命令行传感器读数的解决方案或建议特别好3 次第三方软件(如一个用最小的统计数据和历史数据的工具)。 仅供参考:前面提到的iStat菜单3列出了以下与电源相关的传感器: 电压传感器(伏特) 交流/直流 交流/直流 AC / DC分流器 中央处理器 CPU 1.8V S0 CPU CTT 图形模块 记忆 电流传感器(安培) 交流/直流 中央处理器 CPU VTT 图形模块 功率传感器(瓦) 交流/直流 中央处理器 图形模块 它确实声明了“传感器”,但它们可能按照@msanford的注释进行计算。如何以编程方式获取这些数据?

4
如何使用辅助功能检查器(或任何其他工具)知道UI元素的名称
我正在尝试通过Applescript与打印对话框进行交互。 我要模拟的是用户在特定下拉列表上设置值。 说我有: tell application "System Events" tell process "Preview" set value of pop up button XXX to YYY end tell end tell 我怎么知道XXX的名字?例如,如何区分“打印机”和“预设”下拉菜单? 我已经打开了辅助功能检查器,但是从那里显示的信息中,我无​​法找到对指定下拉列表的名称或其他唯一标识符的引用。 我见过很多人使用数字来指代不同的下拉菜单,但是我不确定这是一种好习惯。如果苹果决定在某个时候交换两个下拉菜单的顺序会怎样? 任何帮助,将不胜感激。 更新: 使用下面建议的10.6.8和检查器,我得到以下信息:

4
Mojave:是禁用还是控制“ [[SOME_APP_NAME]希望访问控制[ANOTHER_APP_NAME(通常是Finder)] ...”?
Mojave中的一项新安全功能围绕着系统对话框展开,该对话框提示您授予对想要控制其他应用程序的应用程序的访问权限,例如Finder(我发现Epi Epichrome等某些应用程序经常发生这种情况): 是否有已知的方法可以禁用此功能或允许某些目标位置(受控应用程序)始终允许此类活动? 我确实相信,与仅使用“可访问性”选项卡仅允许应用程序进行系统更改相比,此行为与以前的OS版本相比已发生了显着变化。 这是新面板:

9
在Terminal.app中查找一个单词
是否有bash或applescript来查找单词 /Applications/Dictionary.app 从终端窗口? open -a /Applications/Dictionary.app/ --args word 忽略--args,说“键入一个单词来查找” Mac字典改进 提示 ^控制 ⌘命令 d 但我希望推出完整的应用程序,而不仅仅是小型popover。


1
如何在不执行激活并将其他窗口置于最前面的情况下,用applescript聚焦特定窗口?
我正在寻找一种使用AppleScript的方法来选择/聚焦应用程序的特定窗口,而无需实际执行“激活”操作,该操作将所有窗口置于最前面。 这是我到目前为止的内容: tell application "Google Chrome" set windowTitle to title of first window whose title contains "whatever" end tell tell application "System Events" to tell process "Google Chrome" click menu item windowTitle of menu 1 of menu bar item "Window" of menu bar 1 end tell tell application "Google Chrome" …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.