Questions tagged «applescript»

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


3
使用私人浏览时是否可以禁用Safari扩展?
最近,我从几种浏览器的Web应用程序从Chrome切换到Safari,发现我不能在私密浏览时禁用Lastpass之类的扩展功能,至少显然没有像在Chrome中那样(默认情况下,在Incognito中禁用扩展名)。 有什么办法可以从Safari UI中执行此操作吗?我有一个Applescript代码段,我用来禁用扩展名,并在完成后将其重新打开,但这有点麻烦,我想将其设置为私人浏览的默认设置。

4
创建一个自动的HFS +压缩文件夹
我想在OS X Lion中设置一种自动归档文件的方法。存档是指在特定文件夹上使用HFS +压缩功能,并使我移入该文件夹的每个文件都自动压缩。我正在考虑使用它来存档不经常使用的大文件,但是不必手动创建压缩存档,也不必在需要时提取它们。 我遇到了工具afsctool(brew install afsctool),该工具可以通过命令行将HFS +压缩应用于文件夹及其中的所有文件。但是我相信它不会激活以后移动到该文件夹​​的文件的压缩。 手动移动文件和重复运行命令行指令很不方便。因此,我猜测我将需要使用automator / AppleScript在两个步骤中执行此操作: 创建一个允许将任何文件移动到特定文件夹的脚本。理想情况下,可以通过右键单击文件来访问名为Archive的选项。 运行命令行指令afsctool -c <folder>,以对刚刚移到该文件夹​​的所有新文件激活压缩。 我没有使用automator或AppleScript的经验,所以我想知道从哪里开始,尤其是关于如何向Finder添加操作以及如何从脚本运行命令行工具方面。 更新 @kopischke指南效果很好。我根据@mark的答案制作了脚本本身,但使用afsctool -c <folder>而不是ditto。这是脚本:应该放入~/Library/Scripts/Folder Action Scripts on adding folder items to this_folder after receiving these_items repeat with i from 1 to number of items in these_items try set this_item to item i of these_items …

2
如何通过键盘快捷键或菜单栏暂停YouTube视频?
是否有一款软件可以通过键盘快捷键或方便访问的按钮(例如,可以通过位于屏幕右上方的菜单栏中)?必要的点击次数越少越好。 这里的关键是我希望能够在任何应用程序中暂停视频,也就是说,当Google Chrome 不是最重要的应用程序时(例如,TextEdit或Microsoft Word是最重要的应用程序)。 iOS内置了此快捷方式。如果从屏幕底部向顶部轻扫,则会出现媒体控件。这些控件可以操纵源自Safari标签的所有音频。 我的网络浏览器是Google Chrome。 OS X El Capitan,版本10.11.6。 我也愿意使用AppleScript(可以在FastScripts.app中将其分配给按键组合)来完成此任务。但是,我无法想象通过AppleScript可以完成如此​​复杂的任务。

4
如何以编程方式将文件夹添加到Spotlight“不编制索引”?
有什么方法可以通过编程方式将文件夹添加到Spotlight的“隐私”标签中?通过终端还是Applescript? 我经常想在Finder中的Spotlight结果中单击某个项目,然后不再对该项目的文件夹建立索引。 我发现如果你 sudo defaults read /Volumes/foo/.Spotlight-V100/VolumeConfiguration.plist Exclusions 您会看到一个数组,其中排除了所有项目。 但是,如果您尝试 sudo defaults write /Volumes/foo/.Spotlight-V100/VolumeConfiguration.plist Exclusions -array-add '/path/to/folder' 它不会被添加到Spotlight首选项面板的“隐私”选项卡中,也不会被取消索引。

7
是否有bash命令来检查Time Machine是否已完成备份?
我正在编写一个脚本,该脚本使用ssh将我的Time Machine目录rsycnc到远程服务器。我已经从Shell脚本切换到AppleScript,然后又切换回Apple脚本,而且我并不在乎解决方案将需要哪种脚本。 我已经用这小段代码成功开始了备份过程。 do shell script "/System/Library/CoreServices/backupd.bundle/Contents/Resources/backupd-helper >/dev/null 2>&1 &" 我现在想做的是在备份完成后执行rsync命令。AppleScript中是否有任何干净的方法来检查备份过程是否已完成?还是可以在bash中使用一个好的“钩子”来检查它是否完成?

3
为什么脚本编辑器.scpt文件没有另存为纯文本文件?
脚本编辑器(以前是Yosemite 10.10之前的AppleScript编辑器)将.scpt文件另存为二进制文件,而不是纯文本文件。 这使得在源代码控制系统中使用它们有些麻烦。 有谁知道为什么会这样吗?是否有一些长期的历史记录要求这种文件格式不是纯文本文件?

3
osascript不允许辅助访问。(-1728)
脚本: #!/usr/bin/osascript tell application "System Preferences" activate set current pane to pane "com.apple.preferences.users" delay 2 tell application "System Events" click radio button "Login Items" of tab group 1 of window "Users & Groups" of application process "System Preferences" end tell end tell 如何为该脚本提供辅助访问?通过“脚本编辑器”运行此脚本时,所需要做的就是在“安全性和隐私”中的“辅助功能”下启用“脚本编辑器”。 但是我需要运行此文件(以及其他一些类似的脚本文件)以在没有用户干预的情况下执行。我试过将文件保存为.sh,.app,.scpt,.applescript格式,并以sudo的身份通过终端运行,没有任何运气。 我已经通过像其他的问题了这个没有任何帮助等。 编辑:感谢您的回应。我们已经尝试过这些方法,并且毫无疑问它们可以工作,这就是问题所在。我们拥有太多Mac机器,无法手动启用它们。我们希望有一些命令可以在用户许可的情况下将Terminal添加到列表(类似于Windows中的UAC),或者在可能的情况下将其添加到列表中。




2
OS X中带有shell命令的(已激活)字体列表
是否有任何shell命令来获取激活字体的列表?就像是: some_font_util -activated -format 'file: name' 以如下形式获取激活字体的列表: /Library/Fonts/CourNI.ttf: Courier New Italic …或类似的东西? 我正在使用Lion。osascript也欢迎来自MacPorts或AppleScript(用于通过命令运行)的内容。

1
在AppleScript中选择一个菜单项,而不使用10.9小牛中的“系统事件”
我只是在回答另一个问题,使我想起了小牛队的一个新“功能”。 我曾经有很多small Automator Service,它们没有输入,但是在与按键绑定时做了一些有用的事情。完美的例子是将航站楼推到最前面的例子。其中一些要求在显示在最前面的应用程序中选择菜单项,例如Bring All to Front。 现在看来,您需要为每个单个应用程序授予“可访问性”,以便在“服务”使用System EventsAppleScript库时可以使用通用按键。 有人知道解决办法吗?

3
编辑TCC.db以绕过本机上的“'Foo.app'要访问控件'Bar.app'”
我广泛使用Apple Events来控制机器上的各种应用程序。在Mojave中引入的新安全提示正在崩溃。 在以前的macOS版本中,一旦授予某个应用“控制您的计算机”的权限,它便能够将Apple事件发送到您计算机上的任何其他应用。在Mojave中,必须为每个受控制的应用程序手动授予一次此权限。 用户授予访问权限后,他们的选择将存储在两个sqlite数据库之一中: ~/Library/Application Support/com.apple.TCC/TCC.db /Library/Application Support/com.apple.TCC/TCC.db 请注意,#2仅对root用户可见。 请注意,系统完整性保护已禁用。 是否可以直接编辑这些sqlite数据库以自动授予权限并绕过这些安全提示?


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.