标签: automator

Automator未正确过滤最近7天内修改的文件

我试图自动化每周备份我的开发文件的过程.我想自动备份文件,过滤所有文件,删除过去7天内未修改的文件,但保留文件夹结构.例如,我将有许多名为index.js的文件,所以为了知道它们属于哪里,我希望维护文件夹结构,并且如果文件在过去7天内被修改,则该文件保留在其正确的文件夹中.到目前为止,我的过程一直是

  • 复制包含所有开发文件的整个文件夹

显示我设置的第一步的Automator设置是获取指定的Finder项目,这是我要复制的文件夹,然后是将Finder项目复制到备份文件夹

这没问题.它复制所有29K文件.下一步是获取文件夹中的所有内容并将其过滤掉.

  • 获取指定的Finder项目(刚刚复制的文件夹)

  • 获取文件夹内容(对找到的每个子文件夹重复)

29,303已复制的文件夹内的项目

马上,我有一个问题. 获取文件夹内容并检查重复每个子文件夹时发现大约有8,000个文件丢失.

马上,我有一个问题.获取文件夹内容并检查重复每个子文件夹时发现大约有8,000个文件丢失.我似乎无法弄清楚造成这种情况的原因或如何解决这个问题.

如果我忽略了这一点并继续,我的下一步是过滤掉这些项目.我想删除在过去7天内未修改的项目,因为我想保留文件夹结构,我想确保该项目不是文件夹

  • 过滤器查找器项目
  • 设置为查找上次修改日期不是最近7天的文件(这应该抓取最近未修改的所有文件)

  • 过滤器查找器项目

  • 现在我过滤掉这些结果并确保获取所有相同的文件但没有文件夹

  • 将Finder项目移至废纸篓

  • 最后,这些在过去7天内未被修改且不是文件夹的项目将被移至回收站.

因此,如果我忽略了Automator最初获取文件夹内容时丢失的初始8,000个文件,并运行它,则无法按预期工作.它确实删除了很多文件,但是遗留了大量过去7天内没有修改过的文件,我无法弄清楚为什么有些文件被删除而有些文件被删除了.我不确定我的流程中是否存在缺陷或我在这里缺少什么.有人能指出我正在努力实现的目标吗?

filesystems macos automator

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

AppleScript或Automator点击应用程序中的菜单?

我不确定这是否可以通过AppleScript和/或Automator进行...但我希望能够:

a)启动一个应用程序(我知道这可以通过AppleScript或Automator轻松完成)

b)启动应用程序后,使用AppleScript或Automator选择特定的菜单项.

例如,我想启动Excel 2008(我的家庭/学生版本没有为Automator预先配置),然后单击"文件"菜单并单击"打开".

关于去哪里/寻找如何选择这样的菜单项的指针(或者如果它甚至可能的话)?

您可以使用Automator的Record功能"排序",但Record非常脆弱.

我宁愿能够使用AppleScript简单地获取包含应用程序的每个菜单项的"数组",然后以编程方式单击我的数组中的第0个菜单项...等.等等

这可能吗?

TIA

macos applescript automator excel-2008

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

如何使用Automator将窗口置于前面?

我使用的是 Mac OSX 10.6,并且我想在桌面应用程序中实现一个自动化功能。我手动按 Command+R 等待应用程序从物理设备读取一些数据 1 分钟,然后再次按 Command+R 进行另一次读取(此时它询问我是否要保存数据,所以我按tab,tab然后空格键选择保存数据。我总共做了3次,所以我想自动化这3次,这样我就可以离开电脑,它会自动读取3次。

自动化是做到这一点的最佳方法吗?

我已经尝试通过使用“看我做”功能在自动化器中执行此操作。首先是“将无标题窗口置于前面”,然后第二个命令是按 command+R。然后我找到了一小段苹果脚本来等待 1 分钟,然后将第一个操作插入到等待函数中。

但是,当我单击“运行”或“单步”时,光标不会移动并打开正确的窗口(“无标题”),而是移动到自动化器中的“媒体”按钮,然后单击该按钮!但该应用程序绝对被列为正确的应用程序。

感谢任何帮助,但也许自动化是错误的方法?

macos automator

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

在NSUserAutomatorTask中设置变量

我正在将一些代码从AMWorkflow迁移到NSUserAutomatorTask,这样我最终可以沙箱化我的应用程序.我希望能够在AMWorkflow中设置工作流中现有变量的值,其中:

AMWorkflow *task = [[AMWorkflow alloc] initWithContentsOfURL:scriptURL error:nil];
[task setValue:@"myValue" forVariableWithName:@"myVar"];
Run Code Online (Sandbox Code Playgroud)

但是,我似乎无法使用NSUserAutomatorTask获得类似的功能.我能找到的唯一文档(类引用)表示将变量作为NSDictionary提供.

所以我正在尝试这样的事情:

NSUserAutomatorTask * task = [[NSUserAutomatorTask alloc] initWithURL:workflow error:nil];

task.variables = [NSDictionary dictionaryWithObject:@"myValue" forKey:@"myVar"];
[task executeWithInput:nil completionHandler:^(id result, NSError *error){
    if(error)
        NSLog(@"Error while executing workflow %@", [error localizedDescription]);
}];
Run Code Online (Sandbox Code Playgroud)

我在另一个答案(使用带有沙盒应用程序的AMWorkflow)中读到,忽略了NSUserAutomatorTask的"executeWithInput:"提供的值.变量是否也可能?

macos objective-c automator

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

使用高CPU时通知。通过AppleScript还是Automator?

我想自动化,只要进程使用超过50%的CPU,
它就会向我的通知中心发送通知

我正在使用终端通知程序来发送低谷通知,
但是我对创建此自动化的最佳方法有些困惑。

我应该使用Automator.app还是创建自定义AppleScript?如果是,
如何使它始终处于打开状态?

applescript automation automator cpu-usage

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

打开终端并从 automator 运行命令以打开两个选项卡并运行命令

我想要做的是运行一个自动化脚本。发生的情况是它打开带有两个选项卡的终端,每个选项卡和 ssh 到 root@192.168.0.1 和 root@ssh@192.168.0.2;你会怎么做?

macos terminal automator

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

python3 不会从 mac shell 脚本运行

我正在尝试在 macOS 10.12 上使用 Automator 来启动 Python 3 脚本。该脚本时,我用下面的命令终端运行它只是罚款:python3 my_script.py

Automator 具有使用 /bin/bash shell 的“运行 Shell 脚本”功能。shell 将使用以下命令运行脚本:python my_script.py,但这似乎只适用于用 Python 2.7 编写的脚本。

我的脚本以 开头#!/usr/bin/env python3,我认为它会将 shell 引导到正确的 python 解释器,但情况似乎并非如此。

作为一种解决方法,如果我插入 python 解释器的完整路径,我可以让脚本运行:/Library/Frameworks/Python.framework/Versions/3.5/bin/python3,但我认为这是次优的,因为如果/当我更新到 Python 3.6 时,这些命令可能不起作用。

有没有更好的方法来引导 /bin/bash shell 运行 Python3 脚本?

python macos shell automator

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

在终端中打开 emacsclient 工作但不适用于 Automator

因此,当我尝试使用 Automator 服务打开新的 emacs(带有 spacemacs 的 GNU 版本 25.2)缓冲区时,出现了一些非常奇怪的行为。

在我的终端中,该命令emacsclient -a '' -c按预期工作,通过 emacsclient 打开一个新缓冲区。但是,当我在 Automator 中创建一个仅运行 ( /bin/bash) shell 脚本的服务时: emacsclient -a '' -c 我收到一条错误消息: The action “Run Shell Script” encountered an error: “emacsclient: could not get terminal name”

由于怀疑这是由于 Automator 没有使用某些默认PATH变量,我尝试了以下操作: PATH=/usr/local/bin:$PATH emacsclient -c 它产生了与以前相同的错误。

接下来我尝试 PATH=/usr/bin:/usr/local/bin export PATH; emacsclient -c 产生了不同的错误消息: The action “Run Shell Script” encountered an error: “emacsclient: invalid option -- c Try `emacsclient --help' for more information” …

emacs terminal automator emacsclient spacemacs

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

当 OSx Mojave 中的 Finder 中未选择任何内容时,如何向右键单击上下文菜单添加选项?

我想知道是否可以修改右键单击 Finder 中任何特定内容时弹出的上下文菜单(如下右侧所示)

我可以轻松地将选项添加到右键单击某个项目(左侧)时弹出的上下文菜单...但是有没有办法将选项添加到右侧的菜单中?

例如,我可以在“新文件夹”下方添加自定义选项“新 Majig”吗?

上下文菜单比较

更多信息:

如果它有用,以下是我创建我想要使用的选项的方法:

  1. 我在Automator > Quick Action中创建了自定义选项,如下所示:

在 Automator 中创建服务

  1. 然后我将它们添加到系统偏好设置 > 键盘 > 快捷方式 > 服务中的上下文菜单中

将服务添加到上下文菜单

细节:

我在莫哈韦 10.14.2

macos applescript contextmenu automator macos-mojave

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

将另一个应用程序添加到 Automator mac 中的快速操作库

我正在使用 Mac Automator 应用程序将新操作添加到文件和文件夹的右键单击快速菜单中。如图所示,我们有许多可用于邮件应用程序和其他应用程序的操作。我想知道是否可以为我的应用程序做类似的事情。我想在库中列出我的应用程序并提供一些类似的选项。能做到吗?

在此输入图像描述

macos automator

5
推荐指数
0
解决办法
99
查看次数