标签: osascript

AppleScript 读取活动应用程序名称、标题和 URL

我需要 AppleScript,当从命令行运行时,它会返回三件事:

  1. 当前活动的应用程序名称;前任。“Google Chrome”、“Safari”、“Steam”、“iTunes”、“Atom”等。
  2. 当前活动的应用程序标题(如果有)
  3. 如果当前活动应用程序是浏览器,我需要当前活动选项卡 URL

例子:

我知道还有一些类似的问题。stackoverflow 上的答案在这里,但我无法将它们组合在一起以完成所有这些工作。非常感谢您的帮助。

macos scripting command-line applescript osascript

6
推荐指数
1
解决办法
2998
查看次数

AppleScript Runner退出状态传递回Shell脚本

我需要能够在Shell脚本中运行AppleScript。我正在使用“ AppleScript Runner”以便处于交互模式,因此支持对话框等。我已经工作了,但是我需要将AppleScript Runner应用程序的退出状态返回到外壳程序,以便我可以查看脚本中是否有任何错误。

这是我的shell脚本:

output=$(/usr/bin/osascript << EOT
tell application "AppleScript Runner"
do script "somescript.scpt"
end
EOT)

status=$?
Run Code Online (Sandbox Code Playgroud)

在这里,我的变量$ status仅以osascript命令的退出状态结束(无论somescript.scpt是否成功成功运行,其退出状态均为0),而不是应用程序AppleScript Runner的退出状态。

有人知道我该怎么做吗?

谢谢!

macos bash shell applescript osascript

5
推荐指数
1
解决办法
2201
查看次数

如何在 OS X 中使用 osascript 或 AppleScript 显示模式窗口

如何在 OS X 10.6.8 及更高版本中使用 osascript 或 AppleScript 显示模式(在所有应用程序、窗口上)窗口。

这是我做的一个脚本:

#!/bin/bash

osascript -e 'tell app "System Events" to display dialog "My Dialog" buttons {"OK"} default button 1 with title "My Dialog" with icon caution'
Run Code Online (Sandbox Code Playgroud)

问题是它不是模态的。

如何解决以下问题?

macos bash terminal applescript osascript

5
推荐指数
1
解决办法
4066
查看次数

如何从Mac / UNIX Shell脚本的提示osascript对话框中隐藏密码

我正处于设计脚本的最后阶段,该脚本将自动执行我的Active Directory绑定,供多人使用。因此,我需要提示输入用户名和密码。我已经成功创建了提示,但是想找到某种方法来防止密码显示在询问密码的对话框中(此操作可以远程完成,我不希望密码可见)。

它可以变成星星,点,根本不显示任何东西,我只需要它不以视觉方式显示,但仍然可以传递给dsconfigad命令。

我已经测试了脚本本身,并且可以正常工作,这是使脚本生效的最后一部分。

(对这里的任何多余评论,我从很多不同的来源整理而成)

#!/bin/bash

while :; do # Loop until valid input is entered or Cancel is pressed.
    user=$(osascript -e 'Tell application "System Events" to display dialog "Enter the network user name:" default answer ""' -e 'text returned of result' 2>/dev/null)
    if (( $? )); then exit 1; fi  # Abort, if user pressed Cancel.
    user=$(echo -n "$user" | sed 's/^ *//' | sed 's/ *$//')  # Trim leading and trailing whitespace.
    if [[ -z "$user" ]]; then …
Run Code Online (Sandbox Code Playgroud)

unix passwords macos shell osascript

5
推荐指数
1
解决办法
1865
查看次数

我怎样才能尽可能地从 OSX 上最前面的窗口/文档中获取所有文本?

我希望能够从屏幕上最前面的窗口获取所有文本,将其通过管道传输到 url 解析器,并从解析的文本中选择要打开的 url。

为此,我需要一种方法来访问最前面窗口的所有文本内容。我已经通过使用 applescript 接近了,但我找不到获取实际文本的方法。我怀疑 swift 可能会有所帮助,但我不知道如何用谷歌搜索这个,因为我的大多数搜索最终都只找到了一些微不足道的方法,例如从 chrome 中的选项卡获取网址等。

这就是我想要的要点:

tell the frontmost application
    get contents of frontmost window as text
end tell
Run Code Online (Sandbox Code Playgroud)

macos applescript osascript swift

5
推荐指数
1
解决办法
338
查看次数

我怎样才能摆脱这个osascript输出?

以下问题与此问题上的答案有关:

我喜欢创建我自己的函数来打开一个新终端的概念,所以Craig Walker在上面引用的问题中链接的脚本符合我的需求.由Mark Liyanage编写的剧本可在此处找到.

那个脚本是这样的:

#!/bin/sh
#
# Open a new Mac OS X terminal window with the command given
# as argument.
#
# - If there are no arguments, the new terminal window will
#   be opened in the current directory, i.e. as if the command
#   would be "cd `pwd`".
# - If the first argument is a directory, the new terminal will
#   "cd" into that directory before executing …
Run Code Online (Sandbox Code Playgroud)

macos bash terminal osascript

4
推荐指数
1
解决办法
4257
查看次数

应用程序在其他Mac上提供"无法打开.app,因为不支持经典环境",但我自己工作正常

我写了一个应用程序是一个bash脚本,整个东西是一个bash脚本,它调用了一些osascripts,也主要用于用户输入,它在我的计算机上工作得很棒,所以我用platypus把脚本变成了应用程序,以便我可以将它发送给朋友,当他试图打开它时,它说你无法打开应用程序**因为不再支持经典环境:http://www.imgur.com/ze0ya4B巴纽

任何运行bash的Mac都应该能够至少运行正确吗?它可能与osascripts有关吗?我在论坛里找不到任何有同样问题并解决它的东西.

Tl; Dr:bash脚本通过platypus,当另一台Mac试图打开它时,新的.app文件会出错.

我正在运行山狮,所以我的macbook也不应该支持经典环境,可能会让其他计算机认为有一些来自经典环境的东西.如果你认为这有助于我上传我的源代码.

macos bash osascript platypus

4
推荐指数
1
解决办法
4497
查看次数

如何在JavaScript for Automation中获取当前脚本文件夹的POSIX路径?

在AppleScript中,可以使用此行获取当前脚本所在的文件夹的POSIX路径:

POSIX path of ((path to me as text) & "::")
Run Code Online (Sandbox Code Playgroud)

结果示例: /Users/aaron/Git/test/

什么是JavaScript等效项?

macos applescript osascript osx-yosemite javascript-automation

4
推荐指数
2
解决办法
2734
查看次数

在macOS Mojave上运行osascript -e [command]的奇怪错误

我刚刚完成了macOS Mojave的全新安装(尽管重新安装了许多零碎的组件),并且在运行bash脚本时遇到了一个奇怪的错误,该脚本随后又通过运行了AppleScript osascriptosascript -e即使实际命令似乎已完成,传递给的任何命令似乎也会产生相同的错误。

例如 $ osascript -e 'say "hello"'

错误是:

2018-12-03 22:35:26.301 osascript [39652:590470] isPrefsCreateCacheFromEnabledAndDefaultInputSources-无法从GetInputSourceEnabledPrefs中找到任何内容,请使用defaultASCIIKeyLayoutDict = {type = mudict dict,count = 3,
entry =>
0:{contents =“ InputSourceKind” } = {内容=“键盘布局”}
1:{内容=“键盘布局ID”} = {值= +2,类型= kCFNumberSInt64Type}
9:{内容=“键盘布局名称”} =英式
}

通过ScriptEditor应用程序运行相同的命令可以正常工作。

使用系统bash,在安装时配置了一个键盘(英语)。

任何人都有相同的问题或想法是什么问题?

macos bash applescript osascript

4
推荐指数
1
解决办法
1618
查看次数

macOS:如何从 AppleScript/JXA 访问实时文本 OCR 功能?

从 macOS Monterey 开始,可以在预览中选择图像中的文本。

AppleScript 和/或 JXA(自动化 JavaScript)是否可以使用此 OCR 功能?

在此输入图像描述

Script Editor.app File>Open dictionary...我选择了Preview.app并查看了Standard SuiteText Suite的 API ,但似乎没有任何与 OCR 相关的内容。(文本套件显然与在图片上绘制文本有关,而不是与文本提取有关。)

我还在 Automator.app 中搜索了文本识别操作,但没有看到任何合适的内容。

macos applescript osascript livetext

4
推荐指数
1
解决办法
2183
查看次数