标签: automator

macOS Mojave,Automator"未授权将Apple事件发送到系统事件."

在我更新到Mojave后,我再也无法使用我之前使用过的自动机服务了. 在此输入图像描述

  • 在安全和隐私方面,我已经检查了AppleScript编辑器.

你看到我的代码有什么问题,或者这是最新macOS的问题?

脚本

on run {input, parameters}
set pathList to {}
repeat with itemNum from 1 to count of input
    tell application "System Events"
        copy POSIX path of (container of (item itemNum of input)) to end of pathList
    end tell
end repeat
return pathList
end run
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

在此输入图像描述

automator macos-mojave

37
推荐指数
7
解决办法
3万
查看次数

shell脚本中的Automator变量

是否可以将Automator变量传递给shell脚本?

unix macos shell automator

24
推荐指数
2
解决办法
3万
查看次数

Unix Bash脚本用于强化/加下/斜体化特定文本

我一直在网上搜索试图找到Unix Bash脚本的例子,它可以处理基本的文本样式(粗体/下划线/斜体),但找不到任何东西?这样的事情可以吗?

例如:

  1. Embolden/Underline/Italicize以":"结尾的所有行?
  2. (关闭)Embolden/Underline/Italicize以":"结尾的所有行?

我想通过Automator将其设置为服务; 所以使用/bin/bash和操作"选定的文本"(当然,在富文本兼容的文件中).

unix bash coding-style automator richtext

21
推荐指数
1
解决办法
1万
查看次数

启动iPhone模拟器时自动打开Safari调试器

Safari中的iOS Web调试器是蜜蜂的膝盖,但每次重启模拟器时它都会关闭.在每次构建之后,不仅从菜单中重新打开它很烦人,而且调试启动期间发生的任何行为都很棘手.

有没有办法在Xcode中设置一个触发器,以便在每次构建后自动打开Safari调试器,或者可能是构建shell脚本或Automator操作以进行构建并立即打开调试器的方法?

iphone safari xcode automator

19
推荐指数
1
解决办法
5075
查看次数

如何以编程方式从OSX上的任何文档生成PDF?

我正在为OSX开发一个项目,用户可以从中选择我需要生成PDF文档的文档集合(来自任何应用程序).标准的"Macintosh打印"对话框有一个PDF按钮,其中包含许多与PDF相关的命令,包括"另存为PDF ...".但是,我需要生成PDF文件而无需用户交互.理想情况下,我希望这适用于任何类型的文档.

这是我到目前为止探讨的选项:

  • Automator动作.有一个用于Automator的PDF库,但它提供了处理PDF文件的操作,而不是生成它们.有一个Finder操作可以打印任何文件,但只能打印到真正的打印机.
  • AppleScript的.某些应用程序能够生成PDF文件(例如,如果您将'save doc in"test.pdf"'发送到Pages,它将生成PDF(但这仅适用于Pages - 我需要支持任何类型的文档) .
  • 定制打印机.我可以创建一个虚拟打印机驱动程序,然后使用自动机操作,但我不喜欢在打印列表中将用户与额外的打印机混淆的想法.

我希望有一些方法可以与活动应用程序进行交互,就像用户执行以下步骤一样:

  1. 做Cmd-P(打开打印对话框)
  2. 单击"PDF"按钮
  3. 选择"另存为PDF ..."(菜单中的第二项)
  4. 在保存对话框中键入文件名
  5. 点击"保存"

如果这是最好的方法(是吗?)那么真正的问题是:如何将UI事件发送到外部应用程序(击键,鼠标事件,菜单选择)?

更新:只是澄清一点:我需要转换为PDF的文档是由其他应用程序创建的文档.例如,用户可能会选择Word文档或Numbers电子表格或OmniGraffle绘图或网页.常见的分母是这些文档中的每一个都有一个相关的应用程序,该应用程序知道如何打印它(OSX知道如何将打印输出呈现为PDF文件).

因此,Cocoa Dev Central的样本没有帮助,因为它们是关于从我的应用程序生成PDF .

pdf macos applescript objective-c automator

18
推荐指数
1
解决办法
7076
查看次数

从shell脚本的参数列表中删除最后一个参数(bash)

这个问题涉及在automator osx中运行的bash脚本.我正在使用automator动作来获取和过滤来自finder的一堆文件引用.然后我通过自动机器操作将该文件夹的名称附加到该列表中.然后,Automator将这些参数提供给名为"run shell script"的操作.我不确定automator究竟是如何调用脚本的,但是当回显时,参数列表看起来像这样:echo "$@"

/ Volumes/G-Raid/Online/WAV_TEST/Testbok 50/01/01000 43-001.wav/Volumes/G-Raid/Online/WAV_TEST/Testbok 50/02/02000 43-002.wav/Volumes/G-Raid /在线/ WAV_TEST/Testbok 50/03/03000 43-003.wav/Volumes/G-Raid/Online/WAV_TEST/Testbok 50

在这种情况下,路径为3个文件和一个文件夹.

在shell脚本中,我启动了一个名为ripcheckc*的应用程序,其中args从automator传递,减去列表中的最后一个参数(文件夹).

我用它来删除最后一个参数:

_args=( "$@" )
unset _args[${#_args[@]}-1]
Run Code Online (Sandbox Code Playgroud)

这是echo $_args:

/ Volumes/G-Raid/Online/WAV_TEST/Testbok 50/01/01000 43-001.wav/Volumes/G-Raid/Online/WAV_TEST/Testbok 50/02/02000 43-002.wav/Volumes/G-Raid/Online/WAV_TEST/Testbok 50/03/03000 43-003.wav

与以前相同,但没有文件夹.

现在,如果我使用"$@"as参数运行ripcheckc 它可以工作(但由于参数列表中的最后一个路径,以后会失败)如果我使用${_args[@]}该应用程序将只是静默中止.当我回显$@并且_args输出看起来相同,除了最后一个参数.

我的问题是 - $ @和$ _args之间的区别是第一个有效输入而第二个没有?

*该应用程序是ripcheckc

我希望我的问题有道理.

编辑:解决了.

bash shell automator argument-passing

17
推荐指数
3
解决办法
1万
查看次数

以编程方式修改Mac OS X上的家长控制

Mac OS有一套非常基本的家长控制选项,允许您限制用户访问网站和应用程序,以及设置每日时间限制.我希望能够编写脚本来执行以下操作:

允许从上午8点到9:30访问特定网站,限制访问游戏.允许从下午5点到下午6点进行一般访问.

我不知道在Mac OS 10.8上编写脚本的方法从哪里开始.有什么建议?这是Automator可以处理的东西,还是我最好使用cron job/shell脚本?

macos automator osx-mountain-lion

14
推荐指数
1
解决办法
5505
查看次数

使用apple的Automator将文件名传递给shell脚本

我有一个automator脚本,我想在一个文件夹上运行.我希望脚本获取文件夹中的每个文件并在其上运行我的shell命令.Automator设置为将输入传递给stdin,但我不认为我正在下面正确使用stdin,你能帮忙吗?

for f in "$@" 
do
    java -Xmx1000m -jar /Users/myprog/myprog.jar $f 
done
Run Code Online (Sandbox Code Playgroud)

shell scripting automator

13
推荐指数
3
解决办法
3万
查看次数

如何创建运行终端命令的Apple脚本?

我想创建一个打开终端并传唤此命令的苹果脚本: sudo killall coreaudiod

这怎么可能?

applescript automator

12
推荐指数
1
解决办法
2万
查看次数

将脚本添加到MacOS Finder上下文菜单

我想在finder上下文菜单中添加一个选项,调用hg add %1%1是finder中所选文件的完整路径.
当然,我可以想到更多有用的案例,添加到上下文菜单中.
有没有一种简单的方法可以做到这一点,不涉及安装任何第三方软件或编译语言编码和构建二进制插件?
就像用脚本编辑器创建脚本并将其放入/Library/Contextual Menu Items/

macos bash applescript finder automator

11
推荐指数
3
解决办法
2万
查看次数